与Facebook深度链接

与Facebook深度链接,facebook,deep-linking,Facebook,Deep Linking,在我的iphone应用程序中,我有一个到facebook的请求帖子。当我单击来自facebook的同一帖子时,主机应用程序应该会出现。当我在这里搜索时,需要在我的文件中添加一些元数据。所以我做了 <meta property="al:ios:url" content="schemename://" /> <meta property="al:ios:app_store_id" content="app store id" /> <meta property="al:

在我的iphone应用程序中,我有一个到facebook的请求帖子。当我单击来自facebook的同一帖子时,主机应用程序应该会出现。当我在这里搜索时,需要在我的文件中添加一些元数据。所以我做了

<meta property="al:ios:url" content="schemename://" />
<meta property="al:ios:app_store_id" content="app store id" />
<meta property="al:ios:app_name" content="Example App" />
<!-- Other headers -->
但它既没有打开我的应用程序,也没有重定向到itunes。 请告诉我我做错了什么???

这是2017年的预期行为。 您正在使用的al:ios:url标记应该可以做到这一点。不幸的是,这项功能在iOS上已经被破坏了一年多,Facebook基本上已经将其注销为wontfix

如果al:web:should\u fallback设置为false,Facebook现在只会在iOS上进行深度链接。这意味着,如果未安装您的应用程序,即使您指定了al:web:url,用户也将始终被带到应用程序商店页面,而不是您自己的网站。大多数精明的品牌不希望新用户的第一次体验是应用程序或游戏商店页面,他们也不愿意牺牲归属数据。正因为如此,al:web:should_fallback现在几乎被普遍设置为false,这意味着目前没有可行的方法直接从iOS Facebook应用程序的新闻提要启动第三方应用程序

在安卓Facebook应用程序中,情况仍然正常,但很明显,这种情况随时都可能发生变化。不幸的是,Facebook没有对iOS版本的改变更加透明,因为这一点存在相当多的困惑

您可以阅读有关此问题背后的详细信息

但有一个解决办法。 像完全公开这样的服务:我是团队中的一员,通过实现应用程序链接、URI方案和iOS通用链接的明智组合来解决这个问题。基本上,你需要做的是在webview中打开一个页面,然后有一个按钮或其他用户驱动的CTA事件从那里启动应用程序。这对用户来说是一个额外的步骤,但目前是最好的解决方法。如果你只想在应用程序安装后发布一个链接,然后链接到网页或应用程序/游戏商店,那么分支链接绝对是你最简单的解决方案

分支链路路由逻辑


还有另一项工作要做。我通过反向工程发现了Spotify如何管理深度链接。要查看此内容,请在订阅源上共享Spotify播放列表。Facebook iOS应用程序将从共享播放列表直接启动到Spotify iOS应用程序中

长话短说——Facebook已经为Spotify启用了这一功能。如果将此元标记放入:

<meta property="fb:app_id" content="174829003346">
然后你的深层链接会神奇地工作,这就是Spotify facebook应用程序ID。我仍在试图确定这是否是由于配置错误的应用程序造成的,或者我们正在调查潜在的反垄断案件


顺便说一下,这不是一个可行的解决方案。如果您的应用程序和URL方案未安装,Spotify应用程序将在其位置打开。但是,这是一个非常有趣的行为。

使用调试工具更新元数据缓存,并验证没有错误。推断属性应该显式提供'og:url'属性,即使可以从其他标记推断出值。此应用程序链接中的应用程序ID有输入错误。该应用程序尚未在其商店中发布,但该应用程序仅在平台不支持的国家/地区可用。。。。我收到这些错误,但我已经将此应用发布到appstore。好的。我清除了调试器工具输入的所有错误。仍然没有重定向到我的应用程序。这是我用来调试的url。在进行这些更改后,你是否在Facebook上发布了新帖子,或者至少刷新了现有帖子?