Android In App Billing 检查是否为测试购买
创始人
2024-08-14 05:00:15
0

要检查Android In App Billing是否为测试购买,可以使用isTestPurchase()方法。下面是一个示例代码:

import com.android.billingclient.api.*;

public class MyBillingClient {

    private BillingClient billingClient;

    public MyBillingClient() {
        billingClient = BillingClient.newBuilder(context)
                .setListener(purchasesUpdatedListener) // 设置购买更新监听器
                .enablePendingPurchases() // 启用待处理购买
                .build();
    }

    // 检查是否为测试购买
    public boolean isTestPurchase(Purchase purchase) {
        if (purchase != null) {
            String purchaseToken = purchase.getPurchaseToken();
            // 通过购买令牌查询购买详细信息
            Purchase.PurchasesResult purchasesResult = billingClient.queryPurchases(BillingClient.SkuType.INAPP);
            if (purchasesResult != null && purchasesResult.getPurchasesList() != null) {
                for (Purchase p : purchasesResult.getPurchasesList()) {
                    if (p.getPurchaseToken().equals(purchaseToken)) {
                        return p.isAcknowledged() && p.isAutoRenewing();
                    }
                }
            }
        }
        return false;
    }

    // 购买更新监听器
    private PurchasesUpdatedListener purchasesUpdatedListener = new PurchasesUpdatedListener() {
        @Override
        public void onPurchasesUpdated(BillingResult billingResult, List purchases) {
            if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK && purchases != null) {
                for (Purchase purchase : purchases) {
                    if (isTestPurchase(purchase)) {
                        // 处理测试购买
                    } else {
                        // 处理正式购买
                    }
                }
            }
        }
    };

}

在上面的示例中,isTestPurchase()方法接受一个Purchase对象作为参数,并使用购买令牌查询购买详细信息。在返回的购买详细信息列表中,遍历所有购买并检查购买令牌是否匹配。如果匹配且购买已经被确认并设置为自动续订,则认为它是测试购买。

在购买更新监听器中,可以根据isTestPurchase()方法的返回值来处理测试购买和正式购买的逻辑。

相关内容

热门资讯

发现一款“凑一桌游戏插件”we... 1、发现一款“凑一桌游戏插件”wepoker买钻石有用吗(一贯真的是有挂)。2、凑一桌游戏插件透视辅...
最新通报“阿拉斗牌作弊”wep... 1、最新通报“阿拉斗牌作弊”wepoker透视有用吗(原生真的是有挂)。2、阿拉斗牌作弊透视辅助简单...
解密关于“微信小程序开心十三张... 解密关于“微信小程序开心十三张脚本”pokemmo内置修改器(好像真的有挂)1、点击下载安装,微扑克...
玩家攻略推荐“宝宝吃吃吃怎么开... 玩家攻略推荐“宝宝吃吃吃怎么开挂”wepokerplus外挂(一贯存在有挂);小薇(透视辅助)致您一...
信息共享“河洛刚次辅助”wep... 1、信息共享“河洛刚次辅助”wepoker透视是真的吗(真是真的有挂)(UU poker、河洛刚次辅...
今日焦点“对联猜猜看辅助器”h... 今日焦点“对联猜猜看辅助器”hhpoker底牌透视脚本(从前存在有挂)是由北京得对联猜猜看辅助器黑科...
每日必备“510k脚本”aap... 1、每日必备“510k脚本”aapoker怎么控制牌(总是真的有挂);详细教程。2、510k脚本透视...
总算了解“川滇互娱app辅助”... 总算了解“川滇互娱app辅助”wepoker有插件吗(固有是有挂)准备好在川滇互娱app辅助ia的高...
重大发现“阿拉斗牌作弊”wep... 重大发现“阿拉斗牌作弊”wepoker破解器(好像存在有挂);支持2-10人实时对战,虚拟庄家发牌,...
最新技巧“兴动助手辅助器”xp... 最新技巧“兴动助手辅助器”xpoker辅助怎么用(竟然真的有挂);大神普及一款德州ai内幕,确定了兴...