inapp采购验证api包装器
pyinapp的Python项目详细描述
安装
pip install pyinapp
用法
目前,pyinapp支持google play和app store收据验证。
谷歌游戏:
frompyinappimportGooglePlayValidator,InAppValidationErrorbundle_id='com.yourcompany.yourapp'api_key='API key from the developer console'validator=GooglePlayValidator(bundle_id,api_key)try:purchases=validator.validate('receipt','signature')process_purchases(purchases)exceptInAppValidationError:""" handle validation error """
应用商店:
frompyinappimportAppStoreValidator,InAppValidationErrorbundle_id='com.yourcompany.yourapp'validator=AppStoreValidator(bundle_id)try:purchases=validator.validate('receipt')process_purchases(purchases)exceptInAppValidationError:""" handle validation error """
重要! 如果您的版本低于0.1.3,则需要检查购买的类型。为了方便起见,您可以通过以下方式处理购买:
defprocess_purchases(purchases):process(*purchases)ifisinstance(purchases,list)elseprocess(purchases)defprocess(*purchases):forpinpurchases:""" for instance, save p to db and add a player some coins for it """
这种方法允许以相同的方式处理google play和app store的购买。
购买
purchase是google play和app store收据的通用包装。它包含以下字段:
- transaction\u id:购买的id(transaction\u id用于app store,而orderid用于google play);
- product\u id:购买了什么产品(app store的product\u id和google play的productid);
- quantity:购买了多少产品(app store的quantity和google play的1都没有这个字段);
- 购买时间:购买产品后,Unix时间戳(purchaseTime用于App Store,而purchaseTime用于Google Play)。
- response:(仅适用于应用程序商店)应用程序商店中的响应(JSON格式)