有没有办法用HTTP协议指定facebook-links打开应用程序(iPhone / Androdi)如果安装?

时间:2014-09-12 11:42:08

标签: facebook url-scheme

所以我知道Facebook-app支持fb:// URL scheme。但它是否也支持HTTP的URL方案?

我已尝试过https://www.facebook.com/Google,并且当从HTC One M8设备上的Chrome点击时,它不会产生打开应用程序的选项。很明显Facebook没有定义匹配该URL的URL方案。但他们可能创造了其他人?从理论上讲,他们可以举例说明当子网址包含/app或其他内容时触发的方案。

我的目标是链接到Facebook个人资料页面,该页面在应用程序中打开(如果已安装),如果没有,则在浏览器中打开。不使用任何Javascript。如果facebook定义了一个匹配任何HTTP协议的模式,那么就有可能。

2 个答案:

答案 0 :(得分:2)

我使用此功能链接到google play,将te协议更改为facebook可以正常工作

public void getpro(View view) {
    final String appName = BuildConfig.APPLICATION_ID;
    try {
        startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id="+appName")));
    } catch (android.content.ActivityNotFoundException anfe) {
        startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id="+appName")));
    }
}

为:

public void getpro(View view) {
    try {
        startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("facebook://facebook.com/inbox")));
    } catch (android.content.ActivityNotFoundException anfe) {
        startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.facebook.com")));
    }
}

答案 1 :(得分:0)

您可以尝试使用Intents实现此目的。我发现了这个:

String uri = "facebook://facebook.com/inbox";
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
startActivity(intent);

Intent用于在使用应用程序时调用其他应用程序。