Android Google Pay接入

本文介绍了如何在Android应用中接入Google Pay,包括连接到Google Play、查询应用内商品信息、启动购买流程、确认购买交易的详细步骤。文章强调了实现连接重试策略的重要性,并提供了查询商品详情和启动购买流程的代码示例。最后,提醒开发者需要在三天内确认购买以避免用户自动退款。
摘要由CSDN通过智能技术生成

}

};

private BillingClient billingClient = BillingClient.newBuilder(activity)

.setListener(purchasesUpdatedListener)

.enablePendingPurchases()

.build();

3、连接到Google Play

在发出Google Play结算请求之前,您必须先通过以下步骤建立与Google Play的连接:

调用newBuilder() 以创建的实例。 BillingClient 您还必须调用 setListener(),将传递给引用, PurchasesUpdatedListener 以接收有关您的应用发起的购买以及Google Play商店发起的购买的更新。

建立与Google Play的连接。设置过程是异步的,BillingClientStateListener 一旦客户端的设置完成并且可以发出进一步的请求,您就必须实现A 来接收回调。

覆盖 onBillingServiceDisconnected() 回调方法,并实施您自己的重试策略,以在客户端断开连接的情况下处理与Google Play的连接丢失。例如,BillingClient如果Google Play商店服务在后台更新,则可能会失去其连接。 在发出进一步的请求之前,BillingClient必须调用 startConnection()方法重新启动连接。

billingClient.startConnection(new BillingClientStateListener() {

@Override

public void onBillingSetupFinished(BillingResult billingResult) {

if (billingResult.getResponseCode() == BillingResponseCode.OK) {

// The BillingClient is ready. You can query purchases here.

}

}

@Override

public void onBillingServiceDisconnected() {

// Try to restart the connection on the next request to

// Google Play by calling the startConnection() method.

}

});

注意:强烈建议您实施自己的连接重试策略并覆盖该 onBillingServiceDisconnected() 方法。BillingClient执行任何方法时,请确保维护连接。

4、查询应用内商品详细信息

您在配置应用内商品时创建的唯一商品ID用于异步查询Google Play的应用内商品详细信息。要在Google Play中查询应用内商品详情,请致电 querySkuDetailsAsync()。调用此方法时,传递一个实例,SkuDetailsParams 该实例 指定产品ID字符串列表和一个SkuType。该SkuType可以是SkuType.INAPP一次性产品或SkuType.SUBS订阅费。

注意:要查询产品详细信息,您的应用将使用您在Google Play控制台中配置产品时定义的产品ID。

要处理异步操作的结果,还必须指定一个实现该SkuDetailsResponseListener 接口的侦听 器。然后onSkuDetailsResponse() ,您可以重写 以在查询结束时通知侦听器,如以下示例代码所示:

List skuList = new ArrayList<> ();

skuList.add(“premium_upgrade”);

skuList.add(“gas”);

SkuDetailsParams.Builder params = SkuDetailsParams.newBuilder();

params.setS

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值