我正面临关于分支io深层链接的问题。
环境:我正在使用 Android Marshmallow SDK,平台:25 Cordova 7.0.1和 分支SDK “io.branch.sdk”:“~2.2.3” “branch-cordova-sdk”:“^ 2.2.5”,
以下是我面临的问题:
场景1:在OnResume回调函数中调用Branch.InitSession。 案件失败: 步骤进行:
首次安装该应用。 (没有打开应用程序) 点击Branch IO Deep Link, 它会在我的手机上打开应用程序,但不会重定向到Deep Link参数中指定的URL,因为InitSession被调用两次。 a)在OnDeviceReady回调函数中。 b)在OnResume函数中(这是因为,因为我的应用程序是第一次打开,它会请求用户许可,暂停应用程序并在用户拒绝/批准调用onresume方法的权限时恢复)。 第二次从OnResume回调调用InitSession时,它会从Deep Link中重新获取空参数,并且应用程序不会按预期重定向到URL。 场景2:如果我删除OnResume中的Branch.InitSession回调fucntion。 成功案例:如果在OnResume函数中删除InitSession,则上述方案效果很好 案件失败:
安装了该应用。 打开应用程序,让应用程序在后台运行。 单击Branch IO深层链接。 应用程序不接收深度链接数据或处理信息的参数,因为在onresume方法中无法使用initsession。 能告诉我如何处理这种情况,请告诉我是否需要发布任何可能有助于您查找我是否以错误方式实施的更多信息。
谢谢&问候, 此Jyothi。
答案 0 :(得分:0)
来自Branch.io的Amruta。正如我们的Cordova专家就Github问题here
所评论的那样您似乎安装了2个版本的分支:
" io.branch.sdk":" ~2.2.3" " branch-cordova-sdk":" ^ 2.2.5",
io.branch.sdk
是我们过时的分支SDK,不再受支持。我们建议您遵循此guide以确保您只运行一个版本的Branch SDK。您也可以关注我们的Github回购中的integration guide获取Cordova SDK。