分支深度链接 SDK 和 Ionic

Branch deep-linking SDK and Ionic

我正在尝试在我的 Ionic 项目中使用 Branch 的深度链接(特别是延迟深度链接)功能。问题是,他们的 Cordova/Ionic 文档不完整。安装他们的 Cordova 插件后,我的应用程序仍然无法识别文档中所述的 Branch 提供程序。但是,我终其一生都找不到任何有关要为 Cordova 插件声明或在我的 angular 模块中需要它的提供程序名称的信息。

我试过声明 Branchbranchio.branch.sdk 和许多其他名称,但无法识别。

调用 Branch SDK 文档中描述的任何 Branch 函数将导致引用错误。我已经联系了他们的技术支持,但他们的回答基本上是他们的内部团队在 Cordova/Ionic 方面缺乏经验,所以他们必须在咨询了他们的 Ionic 承包商后回复我,我真的不知道没时间。 Ionic/Cordova 有没有人得到这个工作?

这里是 Branch 的 Alex:对于延迟,我深表歉意。我们目前正在对 Cordova/Ionic 文档进行重大更新,因为我们最近多次收到类似的反馈。

与此同时,请随时 post 在我们的 SDK GitHub repo 上提出问题。我们的承包商对此进行监控,因此您可能会在那里得到更及时的响应。

首先,确保您通过 branch-cordova-sdk 而不是 https://github.com/BranchMetrics/Cordova-Ionic-PhoneGap-Deferred-Deep-Linking-SDK.git

安装 npm Branch

删除旧的如果已经安装

cordova plugin remove io.branch.sdk

安装正确的npm(填写xxxx)

cordova plugin add branch-cordova-sdk --variable BRANCH_KEY=xxxx --variable URI_SCHEME=xxxx

其次,确保您的 Branch init 位于正确的位置:

.run(function($ionicPlatform) {
  $ionicPlatform.ready(function() {
   ... 

    $ionicPlatform.on('deviceready', function(){
      Branch.initSession().then(function (res) {
        console.log(res);
        alert('Response: ' + JSON.stringify(res));
      }).catch(function (err) {
        console.error(err);
        alert('Error: ' + JSON.stringify(err));
      });
    });
  });
})

最后,您可以通过以下方式测试它是否正常工作:

1) 运行 安装 Branch 插件后的应用程序

2) Safari -> 开发 -> APP_NAME -> index.html -> 控制台 -> "Branch" 总的来说,

1) 确保您始终在设备(而不是模拟器或浏览器)上测试 Branch

2) 确保你正在 npm 安装 branch-cordova-sdk 而不是 github link

3) 您可以在此处找到 SDK 文档:https://github.com/BranchMetrics/cordova-ionic-phonegap-branch-deep-linking

希望对您有所帮助!