1. 기본 공유하기 부분
public void shareLinkToSharedApp() {
Intent intentshare = new Intent(android.content.Intent.ACTION_SEND);
intentshare.setType("text/plain");
intentshare.putExtra(Intent.EXTRA_TEXT, "공유할 글자 입력");
Intent chooser = Intent.createChooser(intentshare, "공유하기 타이틀 입력");
startActivity(chooser);
}
2. 특정 어플 조회 기능 추가
void shareLinkToSelectedSharedApp() {
Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("text/plain");
List<ResolveInfo> appList = getPackageManager().queryIntentActivities(intent, 0);
if (appList.isEmpty()) {
return;
}
List<Intent> shareIntentList = new ArrayList<Intent>();
String shareText = "공유할 글자 입력";
for (ResolveInfo info : appList) {
Intent shareIntent = (Intent) intent.clone();
shareIntent.setType("text/plain");
// 공유하기에 노출될 어플 패키지 명으로 추가
// 1개일 경우 해당 어플이 바로 실행됨.
if (info.activityInfo.packageName.toLowerCase().equals("com.facebook.katana")) {
shareIntent.putExtra(Intent.EXTRA_TEXT, shareText);
shareIntent.setPackage(info.activityInfo.packageName);
shareIntentList.add(shareIntent);
}
}
Intent chooser = Intent.createChooser(shareIntentList.remove(0), "select");
chooser.putExtra(Intent.EXTRA_INITIAL_INTENTS, shareIntentList.toArray(new Parcelable[]{}));
startActivity(chooser);
}
댓글