使用Facebook应用程序打开Facebook网址

8
我想在我的安卓应用中打开一个Facebook链接。 该URL看起来像这样http://www.facebbok.com/abcxyz。它应该在Facebook应用程序中打开'abcxyz'页面,但它总是在浏览器中打开。
代码:
try 
{
    Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
    activityContext.startActivity(browserIntent);
} 
catch (ActivityNotFoundException ex) 
{
     ex.printStackTrace();
}

我的安卓操作系统版本是6.0.1。

我在Instagram http://www.instagram.com/abcxyz 上遇到了同样的问题,而其他应用如Youtube则可以正常使用。


这个能用吗?https://dev59.com/JmAf5IYBdhLWcg3wizSu - Sudhir Bastakoti
@DemoUser,下面的解决方案对我有效。 - Raji A C
1个回答

11

您应该使用Facebook的自定义URL方案来强制应用程序打开您的页面,如下所示:

public Intent getFacebookIntent(String url) {

  PackageManager pm = context.getPackageManager();
  Uri uri = Uri.parse(url);

  try {
    ApplicationInfo applicationInfo = pm.getApplicationInfo("com.facebook.katana", 0);
    if (applicationInfo.enabled) {
      uri = Uri.parse("fb://facewebmodal/f?href=" + url);
    }
  }  

  catch (PackageManager.NameNotFoundException ignored) {
  }

  return new Intent(Intent.ACTION_VIEW, uri);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接