【问题标题】:Upgrade process for Facebook deep linking in iOS and Android app?iOS 和 Android 应用中 Facebook 深度链接的升级流程?
【发布时间】:2014-01-25 08:07:09
【问题描述】:

我更新了 iOS 和 Android 应用以使用 Facebook 帖子中的深层链接,如下所述:

https://developers.facebook.com/docs/ios/app-links/

https://developers.facebook.com/docs/android/link-to-your-native-app/

新应用一切正常。我的问题是很多人会拥有不处理深度链接的旧版本的应用程序。由于我使用的是 Facebook SDK 登录,因此已经设置了 url 方案等。

我能想到的唯一解决方案是等待一个月,让大多数人有机会升级,然后在应用设置中启用深度链接。这远非理想。

有没有其他人遇到过这个问题并找到了更好的解决方案?

【问题讨论】:

  • 您是如何使深层链接发挥作用的?你分享的链接是什么? "myappurl://" ?

标签: android ios facebook deep-linking


【解决方案1】:

您是否使用旧版本的应用进行了测试,它是否会崩溃?

对于 iOS,如果您还没有设置 url 处理逻辑(在 AppDelegate 中的 openURL 方法中),它应该只打开您的应用程序,不做任何其他事情。

在 Android 上,如果您的深层链接处理类是一个新类(并且在您的旧应用中不存在),那么如果 FB 应用在设备上找不到该类,则它不会进行深层链接。

【讨论】:

  • 在 ios 和 android 旧应用程序上,它只是启动应用程序,没有别的。这是一种糟糕的用户体验,因为他们希望看到链接的内容。问题是旧应用程序是为 sdk 登录设置的,所以所有的 url 模式、密钥哈希、类名等都设置好了,所以一旦我在设置中检查深度链接,它就会为所有版本的应用程序。
  • 对于 iOS,没有我能想到的好的解决方案。对于 Android,您可以只使用新的类名进行深度链接(登录根本不使用类名),因此它不应该干扰您现有的应用程序。
  • 我无法在 Android 中使用新的类名,因为它位于 SDK 登录的应用设置中。我想没有好的解决方案。不过还是谢谢。
  • SDK 登录不使用您的类名。它仅用于深度链接。所以如果你之前没有实现深层链接,你可以随意更改类名。
  • facebook的说明说在为sdk设置应用程序时要放入包和类名,所以我就是这样做的。不确定此时更改它会产生什么后果。 developers.facebook.com/docs/android/getting-started