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()方法的返回值来处理测试购买和正式购买的逻辑。

相关内容

热门资讯

三分钟了解!微信小程序外辅助工... 三分钟了解!微信小程序外辅助工具(辅助挂)sohoo竞技联盟辅助器(原生是真的有挂);是一款可以让一...
一起来讨论!微乐广西小程序脚本... 一起来讨论!微乐广西小程序脚本(辅助挂)哈糖大菠萝辅助器(确实有挂);运微乐广西小程序脚本辅助工具,...
重磅来袭!决战13水辅助(辅助... 重磅来袭!决战13水辅助(辅助挂)wepoker有人用过吗(从前是真的有挂)是一款可以让一直输的玩家...
玩家攻略!广东雀神智能插件辅助... 玩家攻略!广东雀神智能插件辅助脚本(辅助挂)wepokerplus开挂(确实是有挂);1、让任何用户...
记者发布!决战卡五星辅助修改器... 您好:决战卡五星辅助修改器这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
每日必备!创思维激k辅助器视频... 每日必备!创思维激k辅助器视频(辅助挂)wepoker数据分析(一贯真的是有挂),创思维激k辅助器视...
重大发现!拼三张自建房软件(辅... 重大发现!拼三张自建房软件(辅助挂)wepoker轻量版透视系统(往昔是有挂);一、拼三张自建房软件...
推荐十款!闲来辅助平台(辅助挂... 推荐十款!闲来辅助平台(辅助挂)wepoker怎么挂飞机(竟然是有挂);闲来辅助平台软件透明挂是一个...
发现一款!微信小程序外辅助工具... 发现一款!微信小程序外辅助工具(辅助挂)云扑克有透视吗(原来真的是有挂);发现一款!微信小程序外辅助...
推荐十款!鸿狐大厅脚本(辅助挂... 推荐十款!鸿狐大厅脚本(辅助挂)fishpoker透视底牌(切实存在有挂);1、推荐十款!鸿狐大厅脚...