在Ionic App中集成Branch.io

时间:2016-04-19 04:50:25

标签: ionic-framework deep-linking branch.io

我正在尝试通过以下链接中的令牌发送我的应用程序链接:我的网站:

branch.link({
  stage: 'new user',
  data: {
       token: 543322
   }},
   function(err, link) {
    console.log(err, link);
});

然后当用户在点击链接后安装应用程序时,我想获得此令牌来注册用户。 我尝试阅读Branch.io文档并实现它,但它不起作用。 有人可以告诉我一个如何让它工作的例子吗? 我的app控制器中的代码就像这样

(():void => {
  'use strict';
  angular
    .module('xyz')
    .controller('abc', abc);

    function abc (
      $window
    ) {
      let vm = this;

      $window.Branch.setDebug(true);
      $window.Branch.initSession().then(function (res) {
        console.log(res);
        alert('Response: ' + JSON.stringify(res));
       }).catch(function (err) {
         console.error(err);
         alert('Error: ' + JSON.stringify(err));
      });

      $window.Branch.getFirstReferringParams().then(function (res) {
        // Success Callback
        alert('res'+res);
      }).catch(function (err) {
        // Error Callback
        alert('err'+err);
      });

      $window.Branch.getLatestReferringParams().then(function (res) {
        // Success Callback
        alert(res);
      }).catch(function (err) {
        // Error Callback
        alert(err);
      });

      function DeepLinkHandler (data) {
       alert('Data from initSession: ' + data.data);
      }

      $window.DeepLinkHandler = DeepLinkHandler;

})();

1 个答案:

答案 0 :(得分:1)

来自Branch的Alex:这个过程有三个步骤:

1。创建链接

您已经使用您在问题中提供的代码执行此操作。

2。将Branch SDK集成到您的应用程序

包含相关步骤的文档页面位于:https://dev.branch.io/getting-started/sdk-integration-guide/guide/cordova/

3。观察传入链接,并将其路由

包含您需要的文档页面位于:https://dev.branch.io/getting-started/deep-link-routing/advanced/cordova/

基本上,它是一个看起来像这样的函数:

function DeepLinkHandler(data) {
    console.log("received data: " + JSON.stringify(data));
    for (key in data) {
        if ((key != "type" && key != "source" && key != "bubbles" && key != "cancelBubble") && data[key] != null) {
            console.log(key + ": " + data["key"]);
        }
    }

    if (data["token"]) {
        // load the view to register the user based on your token
    } else {
        // load your normal view
    }
}