最近因为项目需要加入googleplay的内购功能~所以网上找了很多资料,这里做个记号~
官方的内购支付接入文档:
1.测试时需要把app正式签名后上传到googlepay的后台
2.网上说测试需要把账号添加到后台洏且得用信用卡来测试(这个本人没测过)
a.产品分为不受管理的商品(消耗品,比如游戏中的金币)和受管理的商品(一次性购买即属于本账号,比如某些游戏需要玩家付费后才可以使用完整版本)
b.受管理类产品需要考虑如果玩家用同一个支付账号到别的设备完同一款游戏这时需要考虑把那个设备也设置成已支付
d.后台添加产品后需要激活
点击购买按钮,需要调用的支付方法
verifyDeveloperPayload这个方法是在支付完成的时候在回调里头去验证用嘚,关于payload的生产,看上面官方给的demo的注释大概理解了下:
1.不同的玩家所生成的payload需要不一样
2.即使玩家在不同设备上初始化payload,也要可以通过~
大概是这个意思(如果翻译有问题~砸砖吧~)
下面是支付方法回调的监听:
//購買成功,調用消耗產品上面有中文注释的地方调用了
mHelper.consumeAsync这个方法,这里应該是只有非管理类的产品才需要调用的方法;相当于在购买成功后调用消耗(可以理解为消耗一个道具)
在IabHelper.OnConsumeFinishedListener的回调用于处理成功调用成功支付嘚逻辑(这里可能还需要一步去调用远程服务器验证)