应用程序链接在 facebook 和 safari 中不起作用

Posted

技术标签:

【中文标题】应用程序链接在 facebook 和 safari 中不起作用【英文标题】:Apps Link not working in facebook and safari 【发布时间】:2015-10-09 11:26:50 【问题描述】:

我尝试在我的 ios 项目中实现 App Link。我已经设置了 URL 方案,并通过在移动 safari 中键入 testApps:// 进行了测试。提示打开应用程序对话框。

我还设置了一个 html 文件,通过公共域访问,www.testSite.com/testApps.html 并包含大多数 Apps Link 教程网站推荐的基本元标记。文件如下:

<html>
    <head>
       <meta property="al:ios:url" content="testApps://default" />
       <meta property="al:ios:app_name" content="testApps" />
    </head>
</html>

但是,当我输入 URL 时,Safari 不会提示打开应用程序。

我还设置了 facebook 应用程序设置,FB_test_Apps,将 URL Scheme Suffix 设置为testApps,打开单点登录深度链接

我在 facebook 中分享 www.testSite.com/testApps.html 以及在 facebook 应用程序 FB_test_Apps 下注册的应用程序(它将显示为“通过 FB_test_Apps ”在帖子下)。

当我点击这两个帖子时,Facebook 会将其加载到 facebook 的 webview 中。但是它也不会提示打开我的应用程序。

我有什么遗漏的吗?

更新

我发现这个问题只发生在 IOS9 中。 iOS 8 可以正常运行。

注意 史蒂文

【问题讨论】:

【参考方案1】:

是的,iOS 9 进行了一些更改。您需要将您在项目中使用的 url 方案列入白名单。 只需在 info-plist 中添加数组类型的 LSApplicationQueriesSchemes 并在其下的项目中提及您需要打开的 url。

【讨论】:

+1 感谢您在我能够做到之前 10 秒回答了这个问题。 More information can be seen here. 我明白这一点。但我的问题是从 Facebook 应用程序打开我的应用程序。我认为为了在 IOS9 中执行此操作,我需要 facebook 将我的应用程序列入白名单。但这不会发生不是吗?有什么想法吗? 你在做什么从 Facebook 打开你的应用程序?【参考方案2】:

我想聚会太晚了。

正如 Bhavuk 上面提到的,您必须将 iOS9 及更高版本的 fb 应用列入白名单。

<key>LSApplicationQueriesSchemes</key>
    <array>
     <string>fb</string>
     <string>fbapi</string>
     <string>fbauth2</string>
     <string>fbshareextension</string>
     <string>fb-messenger-api</string>
    </array>

参考这里。

iOS 9 not opening Instagram app with URL SCHEME

【讨论】:

以上是关于应用程序链接在 facebook 和 safari 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

ios App:如何打开 facebook 链接并确保它是在 safari 而不是在本机应用程序中打开的?

iphone facebook login safari 无法打开页面

如何在 iOS UIwebview 中获取 Facebook 访问令牌?

iOS 应用程序如何访问 Safari cookie?

从iOS应用程序打开Facebook页面链接

Xcode快速链接到Facebook页面[关闭]