分支IO在init

时间:2015-08-18 05:06:44

标签: android branch

有时Branch在init上从其服务器返回空json。这是非常随机的,对于相同的url分支响应可能是也可能不是空的。

  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);

referParams:可能是{}或正确的数据。知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

开发环境:

将TestMode设置为“ 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/

可选的:
 -确保在仪表板控制台中正确配置了分支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);