好吧,我在这件事上掉头发太多了……够了!
在我的应用程序中,我有一个按钮可以调用 Facebook 应用程序来更新我的状态。我不想在我的应用程序中执行此操作,我想在 Facebook 应用程序中执行此操作!我相信这不需要SDK,是吗?
所以我发现方法是使用 Intent,就像我正在发送 SMS 或通过 Gmail 发送一样。
public static void viaSMS(Activity activity, String subject, String text) {
Intent smsIntent = new Intent(Intent.ACTION_VIEW);
smsIntent.setType("vnd.android-dir/mms-sms");
smsIntent.putExtra("sms_body",text);
try {
activity.startActivity(smsIntent);
} catch (ActivityNotFoundException ex) {
// handle error
}
}
public static void viaGmail(Activity activity, String subject, String text) {
Intent gmailIntent = new Intent(Intent.ACTION_VIEW);
gmailIntent.setClassName("com.google.android.gm", "com.google.android.gm.ComposeActivityGmail");
gmailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, subject);
gmailIntent.putExtra(android.content.Intent.EXTRA_TEXT, text);
try {
activity.startActivity(gmailIntent);
} catch (ActivityNotFoundException ex) {
// handle error
}
}
但是,我无法通过 Facebook 做到这一点。我没有找到正确的类名和附加内容..
我已经成功启动了 Facebook 应用程序,但我想直接进入“更新状态表”..
public static void viaFacebook(Activity activity, String subject, String text) {
Intent facebookIntent = new Intent(Intent.CATEGORY_LAUNCHER);
facebookIntent.setClassName("com.facebook.katana", "com.facebook.katana.LoginActivity");
try {
activity.startActivity(facebookIntent);
} catch (ActivityNotFoundException ex) {
// handle error
}
}