Branch.io Deeplink在ios 9中没有在safari中工作,但它适用于chrome

Roc*_*era 9 ios branch.io ios-universal-links deeplink

使用Chrome iOS应用时,Deeplinks工作正常.但是在safari中它停止工作并且它总是重定向到appstore页面,即使安装了应用程序,或者有时会弹出警报"safari无法打开页面因为地址无效".几天前一切都很完美.所以我猜这是在ios 9.2更新后发生的.对此有何解决方案?

UPDATE

我尝试过使用新手机(以前没有安装过哪个应用程序)并安装了应用程序.

深层链接适用于两种浏览器(Safari和Chrome).

如果你按下bnc.lt前进按钮,它会为Safari和Chrome打开App Store.

下次打开链接深层链接时:

  • Safari:它询问您是否要在应用商店中打开链接
  • Chrome:它会询问您是否要打开应用并同时重定向到应用商店.如果您在下次单击深层链接时单击"在应用程序中打开",它将在应用程序中打开.

换句话说,您仍然可以在点击状态栏中的bnc.lt前向链接后从Chrome打开应用.这是因为Chrome要求打开应用而不是应用商店.

对于Safari,我最终处于不可逆转状态,深层链接始终打开应用程序商店,而不是应用程序.

Ale*_*uer 14

来自Branch的Alex:这是预期的行为.不幸的是,由于iOS 9.2中对Universal Links的更改,我们的后备选项目前相当有限.

TL; DR:这是大多数用户不会遇到的边缘情况,但您可以通过使用我们的Deepviews功能轻松解决它.

基本上,这是你所看到的背后的逻辑:

  1. 当您在没有安装应用程序的设备上打开链接时,您最终会在我们的bnc.lt服务器上,我们会将您重定向到App Store,以便您可以获取该应用程序.这很好.
  2. 当您首次安装应用程序的设备上打开链接,您的设备会检测到通用链接并立即打开应用程序.所有这些都在您的设备上本地发生,您甚至无法访问我们的bnc.lt服务器.这也很好.
  3. 当您按下bnc.lt前进按钮时,您告诉您的设备"我不希望您立即打开该应用程序...而是显示此链接的网络内容".对于分支链接,此"网络内容"只是重定向到App Store.此时,Branch无法知道您是否安装了应用程序,因此我们必须假设它不是,您将获得与上述相同的处理方式.这不太好,但由于Apple设计系统的方式,我们现在没有更好的选择.
  4. 下次打开链接时,您的设备会记住您bnc.lt过去按下按钮并直接转到网络内容.我不确定为什么Safari会这样做,因为我无法想象很多情况下这是可取的,这会给用户带来很多困惑.

这里真正的问题是,当您按下bnc.lt以绕过应用程序时,您的设备会记住此首选项,并在将来每次看到bnc.lt链接时执行它.Chrome仍然"有效",因为它每次都会主动确认首选项,而Safari只会向前推进.接下来会发生什么选择:

  • 在Apple的理想世界中,您最终会进入一个普通的网页,您只需向上滚动并使用" 在应用程序中打开"按钮来反转此首选项.但由于Branch立即将您重定向到App Store,因此无法选择.您可以考虑使用我们的Deepviews功能,因为这确实提供了一些真实的Web内容来代替您现在看到的直接App Store重定向.
  • 在大多数情况下,您仍然可以长按链接并选择在应用程序中打开,但这不能帮助那些不知道该选项的用户.
  • 在最糟糕的情况下,您最终会进入App Store页面,只需按下" 打开"按钮(而不是" 安装").感谢科恩的魔力,你仍然会在正确的地方结束!

  • 很好的解释,但这些词语"在Apple的理想世界中"使我的日子成为现实:P (5认同)