【发布时间】:2013-10-18 06:31:49
【问题描述】:
背景
我正在尝试在 facebook 应用程序上打开特定的个人资料页面(当然,当安装了 facebook 应用程序时)。
问题
我注意到,如果我作为最终用户转到 facebook 应用程序的应用程序信息屏幕(我可以在其中卸载应用程序、清除其缓存等...)并选择“强制停止”,然后尝试打开个人资料页面时,facebook 应用程序本身要么崩溃,要么甚至无法启动。
如果 facebook 应用程序已经在运行,则代码可以正常运行。
代码
context.getPackageManager().getPackageInfo("com.facebook.katana", 0);
final String facebookScheme = String.format("fb://profile/%s", socialNetworkUid);
final Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(facebookScheme));
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_NO_HISTORY
| Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
return intent;
顺便说一句,该方案是从this link找到的。
问题
- 为什么会发生?
- 我能以某种方式避免它吗?
- 这是 facebook 应用程序的错误还是我没有正确实现?
- 我现在真的需要检查 FB 应用程序是否处于活动状态,然后才允许使用此意图吗?如果有,怎么做?
【问题讨论】:
-
快速回答是,目前不支持直接链接到 Facebook 应用程序内的特定内容的方法。您在 stackoverflow 或其他地方看到的任何机制都是基于反复试验的,并且可能会从一个版本中断到另一个版本。
标签: android facebook android-intent user-profile