我已经为通过 Facebook 进行深度链接设置了一个 Android 应用程序。当设备上未安装 Facebook Android 应用程序时,深层链接在通过 Facebook SDK 共享时尤其有效。但是,当通过 Facebook Android 应用程序进行共享时,深层链接会被破坏:特别是,当从 Facebook 应用程序中单击深层链接的帖子时触发的 Intent 带有一个以 http
作为其地址的 URL scheme 而不是可在共享 URL 下载的网页的 al:android:url
元属性中使用的自定义方案。
我使用的是 Facebook 应用程序版本 37.0.0.48.234 和 Facebook SDK 3.21.1。
当然,一切都很好......几周前 - 或者可能是几个月前。是的,我知道我使用的是旧版 SDK。但是,我不想盲目地更新库,却发现它仍然不起作用,我想对此做出更明智的决定。所以,我要问以下问题:
- 我正在使用的 SDK 版本与最新的 Facebook Android 应用程序之间是否存在特定的、有记录的或至少是宣传的不兼容性?似乎
ShareDialogBuilder.setLink
设置的 URL 没有被 Facebook 应用程序正确处理或识别,因此按原样使用,而不是通过al 触发深度链接: android:url
该 URL 页面包含的元属性。 - 是否存在阻止最新的 Facebook Android 应用程序处理深度链接的特定的、记录在案的错误,因为它们曾经是一段时间以前设置的,希望将来能得到修复,这样应用程序开发人员就不必跳了到处尝试解决问题?
- 是否存在解决此问题的方法?而且,如果变通方法涉及更新 Facebook SDK,则哪个特定机制(Facebook 应用程序期望接收的属性的名称,或者其他什么?)发生了意外更改(例如该属性被重命名,例如来自
link
到contentUrl
,或其他)在过去几周/几个月?
最佳答案
在 iOS SDK 上会不会是同样的问题?
看看 FB 上这个悲伤的回答:
https://stackoverflow.com/a/30617527/2707000
我遇到了同样的问题,但使用不同的 iOS 设备,在 FB 应用程序上打开链接而不是共享链接的设备可以正常工作!
ps:有时我需要重新启动 FB 应用程序,可能这样应用程序会从服务器重新拉取帖子,避免某种缓存。
干杯。
关于android - Facebook 应用程序破坏了 Android 上的深度链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31534001/