branch.io deeplink在离子3中没有按预期工作

时间:2018-04-05 10:34:09

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

我在我的离子3应用程序中集成了branch.io deeplink。我已成功生成链接,链接打开了应用程序。但是,我想打开一个特定的页面,而不是应用程序的主页。

因此,我将以下代码集成到所需的页面:

  dl(){
      // only on devices
      if (!this.platform.is('cordova')) { return }
      const Branch = window['Branch'];

        //only canonicalIdentifier is required
        let properties = {
          canonicalIdentifier: 'content/123',
          canonicalUrl: 'https://example.com/content/123',
          title: 'Content 123 Title',
          contentDescription: 'Content 123 Description ' + Date.now(),
          price: 12.12,
          currency: 'GBD',
          contentIndexingMode: 'private',
          contentMetadata: {
            custom: 'data',
            testing: 123,
            this_is: true
          }
        }
              //create a branchUniversalObj variable to reference with other Branch methods
        let branchUniversalObj = null
        Branch.createBranchUniversalObject(properties).then(function (res) {
          branchUniversalObj = res
          //alert(JSON.stringify(res));          
          // optional fields

        }).catch(function (err) {
          alert('Error: ' + JSON.stringify(err))
        })



        let message = 'Check out this link'

        Branch.initSession(function(data) {
          if (data['+clicked_branch_link']) {
            // read deep link data on click
            alert('Deep Link Data: ' + JSON.stringify(data))
          }
        }).then(function(res) {
          // create deep link
          var analytics = { 
            channel: Date.now() 
          }
          var properties = {}
          branchUniversalObj.generateShortUrl(analytics, properties).then(function (res) {
            alert('Response: ' + JSON.stringify(res.url))


          }).catch(function (err) {
            alert('Error: ' + JSON.stringify(err))
          })

          branchUniversalObj.onLinkShareResponse(function (res) {
            alert('Goosebumps:'  + JSON.stringify(res))
          })
        });




  }

我将该功能添加到按钮单击中。但是,当我点击创建的链接时,它仍会打开应用主页。

1 个答案:

答案 0 :(得分:0)

您似乎没有使用正确的深层链接路由设置。请参阅此分支机构文档以获得最佳结果:https://docs.branch.io/pages/deep-linking/routing/