Branch IO在初始化时发送空响应

4

有时候,在初始化时Branch从其服务器返回空的JSON。这非常随机,并且对于相同的URL,Branch的响应可能为空或非空。

  Branch branch = Branch.getInstance();
            branch.initSession(new Branch.BranchReferralInitListener() {
                @Override
                public void onInitFinished(final JSONObject referringParams, final BranchError error) {
                    new Handler(Looper.getMainLooper()).post(new Runnable() {
                        @Override
                        public void run() {
                            runningOnUIThread(referringParams, error);
                        }
                    });
                    Log.d("BRANCH IO",referringParams.toString());
                }
            }, a.getIntent().getData(), a);

referringParams: 可能是 {} 或正确的数据。有什么想法为什么会发生这种情况吗?


嘿 @Kay,你解决问题了吗?我现在也遇到了同样的问题...非常烦人。提前谢谢。 - chabislav
请告诉我您是否找到了答案。我也遇到了同样的问题。 - rosu alin
1个回答

2

开发环境:

将测试模式设置为“true”,以在开发环境中模拟全新安装。

<meta-data android:name="io.branch.sdk.TestMode" android:value="true" />


配置您的iOS/Android应用程序

Android: https://docs.branch.io/pages/apps/android/
iOS: https://docs.branch.io/pages/apps/ios/

可选:
- 确保您已正确地在仪表板控制台中配置了Branch io链接设置。

enter image description here

- 使用您在链接管理中定义的参数列表中的适当键名获取参数。

JSONObject sessionParams = Branch.getInstance().getLatestReferringParams();
sessionParams.has("paramName")


开始一个分支会话:

    Branch branch = Branch.getInstance();
    // Branch init
    branch.initSession(new Branch.BranchReferralInitListener() {
        @Override
        public void onInitFinished(JSONObject referringParams, BranchError error) {

            if (error == null) {


                Log.e("BRANCH SDK", referringParams.toString());

                // latest
                JSONObject sessionParams = Branch.getInstance().getLatestReferringParams();
                Log.e("sessions params :", sessionParams.toString());

                // first
                JSONObject installParams = Branch.getInstance().getFirstReferringParams();
                Log.e("install params :", installParams.toString());

                processDeepLinkParams(sessionParams);


                if (getIntent().getExtras() != null && getIntent().getExtras().keySet() != null) {


                    deepLinkinData = getIntent().getExtras().getString("branch_data");
                }
                // Branch logging for debugging
               //  Branch.enableLogging();


            } else   {

                Log.i("BRANCH SDK", error.getMessage());

            }



        }
    }, this.getIntent().getData(), this);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接