Google pay 支付接入(结算库版本 3及之上 )

Google pay 支付接入(结算库版本 3及之上 )

接入前准备:
1.谷歌开发者账号,登陆Google Play 管理中心(创建你的应用)
2.一台支持谷歌服务的手机,有谷歌全家桶,嗯,翻墙.
3.一个谷歌测试账号,建议加入谷歌测试白名单(这样就不用测试银行卡测试了).
4.在谷歌开发者后台配置好商品.

谷歌接入文档参考:
Google Play 结算库

想了解细节的可以参考一下,和旧版AIDL解算差别还是很大的,反正我看晕了…(订阅什么的)

准备工作做好就可以开始接入了

一、将依赖项添加到应用的 build.gradle 文件中

dependencies {
    implementation "com.android.billingclient:billing:4.0.0"
}

二、初始化google pay

billingClient.startConnection(object : BillingClientStateListener {
    override fun onBillingSetupFinished(billingResult: BillingResult) {
        if (billingResult.responseCode ==  BillingResponseCode.OK) {
            // The BillingClient is ready. You can query purchases here.
        }
    }
    override fun onBillingServiceDisconnected() {
        // Try to restart the connection on the next request to
        // Google Play by calling the startConnection() method.
    }
})

三,拉起支付

List<String> skuList = new ArrayList<>();
skuList.add(productId);//传入商品ID
SkuDetailsParams.Builder params = SkuDetailsParams.newBuilder();
params.setSkusList(skuList).setType(BillingClient.SkuType.INAPP);
billingClient.querySkuDetailsAsync(params.build(),
        new SkuDetailsResponseListener() {
            @Override
            public void onSkuDetailsResponse(BillingResult billingResult, List<SkuDetails> skuDetailsList) {
                if (billingResult.getResponseCode() != BillingClient.BillingResponseCode.OK) {
                    Log.e("Google pay", "Unsuccessful query .Error code:" + billingResult.getResponseCode());
                } else if (skuDetailsList != null && skuDetailsList.size() > 0) {
                    //成功地获得了sku详细
                    for (SkuDetails details : skuDetailsList) {
                        Log.e(TAG, "google pay skuDetailsList: " + details.toString());
                        if (productId.equals(details.getSku())) {
                            //启动购买
                            BillingFlowParams purchaseParams =
                                    BillingFlowParams.newBuilder()
                                            .setSkuDetails(details)
                                            .build();
                                  billingClient.launchBillingFlow(_activity, purchaseParams);
                                }
                            }
                        }
                    }
                });

四、查询订单

    /**
     * 查询购买交易,以确保所有购买交易都得到成功处理,如购买未发货,或者未消耗
     */
    public void queryPur
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值