Branch.io 延迟链接仅在第二次启动时处理

问题描述 投票:0回答:1

我们的 ReactNative 应用程序中 iOS 上的 Branch.io 链接遇到问题。当我们的应用程序使用来自 Branch.io 的延迟链接安装时,我们在打开应用程序时不会收到链接数据。但是,在用户重新启动应用程序后,链接将被处理。

这是我们的 RN 代码:

import branch, { BranchSubscriptionEvent } from 'react-native-branch';

useEffect(() => {
        const unsubscribe = branch.subscribe((value: BranchSubscriptionEvent) => {
          console.log('value', value);
          //more handling of the link
        };
    
        return unsubscribe;
      }, [...dependencyList]);

通过链接在iOS上安装时登录到控制台的对象是:

{ "error": null, "params": { "+non_branch_link": "com.ourapp.app://google/link/?request_ip_version=IP%5FV4&match_message=No%20pre%2Dinstall%20link%20matched%20for%20this%20device%2E", "+is_first_session": true, "+clicked_branch_link": false, "+rn_cached_initial_event": true }, "uri": "com.ourapp.app://google/link/?request_ip_version=IP%5FV4&match_message=No%20pre%2Dinstall%20link%20matched%20for%20this%20device%2E" }
当我们重新启动应用程序时,就会处理正确的链接:

{ "error": null, "params": { "~channel": "App", "+is_first_session": false, //more fields... "~feature": "Signup", "~campaign": "Refferal", "deeplinkURL": "our custom data to handle link", "~tags": [ "referral" ] }, "uri": null }
该链接是通过 Branch.io API 创建的

{ "data": { "$desktop_url": "https://ourdomain.com", "deeplinkURL": "our custom data to handle link" }, "channel": "App", "campaign": "Referral", "feature": "Signup", "tags": [ "referral" ], "branch_key": "{{branchKey}}" }
知道为什么我们在首次启动应用程序时无法获取所有数据吗? Android 运行正常。

ios react-native deep-linking branch.io
1个回答
0
投票
我可以看到

"+clicked_branch_link": false, 当按键不匹配或您使用错误的快速链接(实时或测试)时,就会发生这种情况。

您能否使用此

[RNBranch enableLogging]; 启用日志记录并分享它们。 要启用测试实例,请使用此 RNBranch.useTestInstance()

请将 Branch SDK 置于 App Delegate 文件的顶部并进行测试,测试密钥应在 init 之前使用。

© www.soinside.com 2019 - 2024. All rights reserved.