Google Pay接入流程

本文详细介绍了Google Pay的接入流程,包括应用创建、内购及订阅概念、业务接入步骤、服务器校验、测试注意事项以及解决常见问题。强调了内购与订阅的区别,购买成功的商品消耗验证,以及支付遭拒的可能原因和处理方法。此外,还提到了绑定银行卡支付的注意事项和测试环境的搭建。
摘要由CSDN通过智能技术生成
应用创建

创建应用需要上传一个签名后的包。可以是个空包,也就是说,可以上传一个和正式包一样包名和签名的就可以提前获得回复的key。

GooglePay内购及订阅概念

1.GoogleInapp(内购)

GoogleInapp也叫google内购,内购分为两个步骤,第一步为购买。购买成功后,需要消耗该商品。如果该商品未消耗,那么当前设备下次购买该商品将会失败,返回code码为7.用户如果第一次购买该商品,在两小时内可以不通过开发者同意进行退款(该规则同样适用于订阅功能)。在服务器校验流程中,可以根据code码判断是否退款。

2.GoogleSubs(订阅)

googleSubs也叫google订阅。定期的扣除用户的费用。直到用户到googlePlay中接触订阅。

/**
     * 用于订阅商品
     *
     * @param context
     * @param productId Google play store 后台定义的商品的id。如果错误的话,将提示检索失败
     * @param payload   该字段随机生成一定长度的字符串,用于生成的订单支付成功后根据google返回的订单信息关联。
     */
    public void subsGoods(Activity context, String productId, String payload)
复制代码

业务接入流程

  1. 调用queryProductDetails(productId,listener)方查询google后台是否拥有该商品id。如果有该商品id,同时返回该商品价格,货币,描述信息等信息
  2. 根据返回信息到服务器创建预支付订单。
  3. 创建成功后,调用googlePay.buyGoods(activity,productId,developerPayload)购买方法,下面分为两种情况,一种是购买成功,触发onBuySuccess(OrderParam orderParam)方法(下一步骤为4),一种是购买失败,而失败中如果是由于未消耗造成的会返回状态码为7(下一步骤为6);触发haveGoodsUnConsume()方法。
  4. 购买成功,到服务器校验该商品.
  5. 如果商品校验成功,调用googlePay.consumeAsync(mPurchasingItemType,purchaseData, dataSignature)方法消耗该商品,如果消耗失败,那么下次购买时,到步骤1,直到消耗成功后才能进行下一次支付,这样可以百分百的保证不丢单.
  6. 根据返回的状态码为7时,会触发haveGoodsUnConsume方法,在该方法中调用handQueryInventoryAsync()方法查询未消耗商品的信息
  7. 根据查询到的信息,到服务器校验该商品信息;(下一步骤为5)。

GooglePay接入方法说明

初始化GooglePay对象

/**
     * 初始化Google pay
     *
     * @param context                上下文参数
     * @param base64EncodedPublicKey 购买需要的公钥
     * @param listener               初始化和购买的回调
     */
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值