iOS版12.1.2 branch.io通用链接打开的应用程序,但没有数据存在

问题描述 投票:1回答:2

我想实现一个iOS应用通过branch.io深层链接(雨燕4.2)。我有完全集成了iOS SDK作为分支文档概述。为了测试整合,我跑了branch.io通用链路验证脚本,并顺利通过。

什么不工作的通用连接'S:点击从“注意事项”或“消息”一个深层链接不打开应用程序,但没有数据传递。看着调试日志时分会报告一个完全空白的网址(example.app.link?%24identity_id=611647344982868361),而不是(example.app.link/hj86HlvvMk2?%24identity_id=611647344982868361)。这是一样的只是手动打开应用程序没有深层链接。没有数据从递延深层链接功能提供两种。

使用URI方案,而不是通用链接:如果我把通用链接OFF通过branch.io链接设置仪表盘,那么所有的URL在浏览器中打开,没有任何提示打开该应用。然而,当我手动打开应用程序,深层链接数据可在启动(通过延迟链路功能)。

其他尝试:添加$uri_redirect_mode: 2的链接数据,迫使应用程序开启并没有真正改变任何东西。唯一不同的是,URI方案,它重定向到$fallback_url之前显示在Safari中的错误。我也尝试重新安装应用程序新鲜,清除Safari浏览器缓存和Cookie,没有成功。

我也将提到,应该有什么不对的深层链接自己。在Android上,同样的深层链接很好地工作。

这两种方法都能够与立即提供深层链接数据打开应用程序。是否有任何其他选项,以使这项工作?

UPDATE:URI和普遍联系是不同的问题。我们得到的URI通过双重检查我们的URI方案(这是不正确的)工作。对于通用的链接,有可能是分公司的文档雨燕4.2的误差。见我一个解决方案的答复。

UPDATE 2019年2月5日:分行文档已更新为4.2雨燕。一切都很好地工作。

ios deep-linking branch.io ios-universal-links swift4.2
2个回答
7
投票

UPDATE 2019年2月5日:分行文档现在已是最新的斯威夫特4.2。


原来的答案:

好了,所以我们找到了解决不工作的普遍联系。我相信科文档是不是最新的4.2雨燕。在处理通用环节,func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void)协议应改用[UIUserActivityRestoring] [Any]restorationHandler PARAM。见下文:

当前分支的文件(不工作):

func application(_ application: UIApplication,
                 continue userActivity: NSUserActivity, 
                 restorationHandler: @escaping ([Any]?) -> Void) -> Bool {
  // handler for Universal Links
  Branch.getInstance().continue(userActivity)
  return true
}

上述功能也导致了XCode警告。自动修复将无法正常工作,它只是将其转化为私有函数,而不是正确的协议。

校正(工作):

func application(_ application: UIApplication, 
                 continue userActivity: NSUserActivity, 
                 restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
  // handler for Universal Links
  Branch.getInstance().continue(userActivity)
  return true
}

1
投票

成龙从这里分公司。

你可以确保要经过下面的关卡?

如果您继续看到链接数据没有通过,你可以请发送科应用ID,路段(或多个)您使用的是[email protected],使我们的团队可以做一个深潜?

© www.soinside.com 2019 - 2024. All rights reserved.