我想从我的
Android应用程序打开一个Facebook链接.
URL看起来像 http://www.facebbok.com/abcxyz.它应该在Facebook应用程序中打开’abcxyz’页面,但它总是在浏览器中打开.
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(); }
我的Android操作系统版本是6.0.1.
我和Instagram,http://www.instagram.com/abcxyz有同样的问题,而Youtube等其他应用程序也有问题.
解决方法
您应该使用Facebook的自定义网址方案强制应用打开您的页面,如下所示:
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); }