Skip to content

Instantly share code, notes, and snippets.

@eneim
Forked from anzfactory/share_facebook_sample.java
Last active August 29, 2015 14:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save eneim/b3dd94caaf57e7dec32c to your computer and use it in GitHub Desktop.
Save eneim/b3dd94caaf57e7dec32c to your computer and use it in GitHub Desktop.
private void shareFacebook(String text)
{
String packageName = "com.facebook.katana";
String activityName = null;
// 該当パッケージをもつアプリで、ACTION_SENDに対応しているactivityを取得する
// 暗黙的インテントで表示されるリストから該当のアプリを探し出すという感じ
PackageManager pm = getPackageManager();
Intent intent = new Intent( Intent.ACTION_SEND );
intent.setType("text/plain");
List<ResolveInfo> resolves = pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
ActivityInfo activityinfo = null;
for (ResolveInfo info: resolves) {
activityinfo = info.activityInfo;
if (activityinfo.packageName.equals(packageName)) {
activityName = activityinfo.name;
break;
}
Log.d("package name", activityinfo.packageName);
Log.d("activity name", activityinfo.name);
}
// Facebook公式アプリがインストールされてない
if (activityName == null) {
Toast t = Toast.make(getApplicationContext(), "not installed", Toast.LENGTH_LONG);
t.show();
return;
}
// 呼び出す
ComponentName componentName = new ComponentName(packageName, activityName);
intent.setComponent(componentName)
.putExtra(Intent.EXTRA_TEXT, text);
startActivity(intent);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment