1

我正在使用 Branch.io 作为推荐代码。我看到两种方法似乎适用于我想做的事情,但是,两者的描述似乎相同。在 Branch.io 的上下文中,我如何确认用户输入了正确的推荐代码?

分支文档:https ://github.com/BranchMetrics/Branch-Android-SDK#register-an-activity-for-direct-deep-linking-optional-but-recommended

根据文档,有两种方法可以工作,validateReferralCode() 和 applyReferralCode()。两者的实现如下。

Branch branch = Branch.getInstance(getApplicationContext());
branch.validateReferralCode(code, new BranchReferralInitListener() {
    @Override
    public void onInitFinished(JSONObject referralCode, Branch.BranchError error) {
        try {
            if (!referralCode.has("error_message")) {       // will change to using a second callback parameter for error code soon!
                String referral_code = referralCode.getString("referral_code");
                if (referral_code.equals(code)) {
                    // valid
                } else {
                    // invalid (should never happen)
                }
            } else {
                // invalid
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }
});

和....

Branch branch = Branch.getInstance(getApplicationContext());
branch.applyReferralCode(code, new BranchReferralInitListener() {
    @Override
    public void onInitFinished(JSONObject referralCode, Branch.BranchError error) {
        try {
            if (!referralCode.has("error_message")) {
                // applied. you can get the referral code amount from the referralCode JSONObject and deduct it in your UI.
            } else {
                // invalid code
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }
});

文档中的描述如下:

验证推荐码

验证分支系统中是否存在推荐代码并且仍然有效。代码在以下情况下有效:

它还没有过期。如果其计算类型为 uniqe,则当前用户尚未应用。如果有效,则在回调中返回引用代码 JSONObject。

并申请推荐代码

申请推荐码

如果分支系统中存在推荐代码并且仍然有效,则应用推荐代码(见上文)。如果代码有效,则在回调中返回引用代码 JSONObject。

这些有什么区别?

4

1 回答 1

1

在Branch 的系统中,您可以指定一个推荐代码为一次性使用(意味着有人提前申请)。如果您需要事先查看此值,请使用验证推荐代码方法。

当然,Apply 将代码应用于用户的余额。如果您创建了唯一类型的推荐代码,则应用将失败。在向用户展示或应用代码之前先验证代码是一种很好的做法。

于 2015-07-24T19:55:27.207 回答