与IOS中的branch.io进行深度链接时,Cordova Ionic v1 App崩溃

时间:2018-10-19 12:06:16

标签: ios cordova ionic-framework branch.io

我正在使用Ionic V1构建Cordova项目。我的应用程序可在android和iOS上运行。但是,当我尝试使用分支实现深度链接时,该应用程序崩溃了。我也无法跟踪控制台。这是我的应用程序的详细信息。

节点:6.11.2 科尔多瓦:7.1.0 离子性:1.7.16

插件列表

branch-cordova-sdk 2.6.24 "branch-cordova-sdk"
com.googlemaps.ios 2.7.0 "Google Maps SDK for iOS"
cordova-custom-config 2.0.3 "cordova-custom-config"
cordova-plugin-admobpro-firebase 2.29.23 "AdMob Plugin Pro"
cordova-plugin-apprate 1.1.7 "AppRate"
cordova-plugin-camera 4.0.3 "Camera"
cordova-plugin-compat 1.2.0 "Compat"
cordova-plugin-console 1.1.0 "Console"
cordova-plugin-device 1.1.7 "Device"
cordova-plugin-dialogs 2.0.1 "Notification"
cordova-plugin-extension 1.5.4 "Cordova Plugin Extension"
cordova-plugin-facebook4 1.7.4 "Facebook Connect"
cordova-plugin-file 4.1.1 "File"
cordova-plugin-file-transfer 1.5.1 "File Transfer"
cordova-plugin-geolocation 4.0.1 "Geolocation"
cordova-plugin-globalization 1.11.0 "Globalization"
cordova-plugin-googlemaps 1.4.5 "cordova-googlemaps-plugin"
cordova-plugin-inappbrowser 2.0.2 "InAppBrowser"
cordova-plugin-network-information 1.3.4 "Network Information"
cordova-plugin-splashscreen 3.2.2 "Splashscreen"
cordova-plugin-statusbar 1.0.1 "StatusBar"
cordova-plugin-whitelist 1.3.3 "Whitelist"
cordova-plugin-x-socialsharing 5.1.8 "SocialSharing"
cordova-plugin-x-toast 2.6.2 "Toast"
cordova.plugins.diagnostic 3.1.7 "Diagnostic"
es6-promise-plugin 4.2.2 "Promise"
ionic-plugin-keyboard 1.0.9 "Keyboard"
phonegap-plugin-barcodescanner 6.0.8 "BarcodeScanner"
phonegap-plugin-push 2.1.2 "PushPlugin"

这是我的代码:

Config.xml

<plugin name="branch-cordova-sdk" spec="^2.5.0" />
<branch-config>
<branch-key value="key_live_XXXXXXXX" />
<uri-scheme value="xxxx" />
        <link-domain value="xxxx.app.link" />
        <ios-team-release value="XXXXXXX" />
    </branch-config>

代码:

// for development and debugging only
Branch.setDebug(true)

// for GDPR compliance (can be called at anytime)
Branch.disableTracking(true);

// Branch initialization
Branch.initSession().then(function(data) {
  if (data['+clicked_branch_link']) {
    // read deep link data on click
    alert('Deep Link Data: ' + JSON.stringify(data))
  }
})

该应用在Android上运行正常。但是在iOS中,它一直崩溃。请帮助

2 个答案:

答案 0 :(得分:1)

好像您使用的是Branch Cordova SDK的旧版本(v2.6.24)。最新版本是v3.1.0。您可以将SDK更新到最新版本,并检查是否能够在iOS上重现崩溃吗?

如果您仍然能够重现崩溃,可以通过写信至support@branch.io来共享符号化的崩溃报告吗?

答案 1 :(得分:0)

我发现了问题。当我尝试使用xcode进行调试时,收到未找到分支键的错误。当我检查时,info.plist文件,分支键不存在。我尝试再次删除并添加插件,但是分支键仍未追加到info.plist文件中。后来我在config.xml文件中添加了以下行,这有助于解决该问题。

<config-file mode="replace" parent="branch_app_domain" platform="ios" target="*-Info.plist">
            <string>myApp.app.link</string>
        </config-file>
<config-file mode="replace" parent="branch_key" platform="ios" target="*-Info.plist">
            <string>key_live_XXXXXXXXXXXXXXXXX</string>
        </config-file>

在配置文件中添加以上行并再次构建应用后。现在,分支键已添加到info.plist文件中,并且应用程序正常运行。