Android应用内结算 – queryInventoryAsync返回0结果

Android应用内结算 – queryInventoryAsync返回0结果,第1张

概述我在使用应用内结算流程时遇到了令人沮丧的问题. 我在开发控制台中创建了一个新的应用程序,添加了一个名为“P1”的inapp产品,该产品目前处于活动状态;我已经将我的应用程序上传到alpha版本的商店,然后升级到测试版,添加了测试人员帐户并在使用测试人员帐户签署的设备(平板电脑)上安装了apk,并使用开发帐户进行了安装. 现在,我想查询商店以获取非拥有skus价格等信息. 这是我的活动代码: pri 我在使用应用内结算流程时遇到了令人沮丧的问题.
我在开发控制台中创建了一个新的应用程序,添加了一个名为“P1”的inapp产品,该产品目前处于活动状态;我已经将我的应用程序上传到Alpha版本的商店,然后升级到测试版,添加了测试人员帐户并在使用测试人员帐户签署的设备(平板电脑)上安装了apk,并使用开发帐户进行了安装.

现在,我想查询商店以获取非拥有skus价格等信息.
这是我的活动代码:

private voID istantiate() {     List<String> tmp = new List<String>();     tmp.add("P1");     final List<String> skus = tmp;     mHelper = new IabHelper(mContext,base64EncodedPublicKey);     // enable deBUG logging (for a production application,you should set this to false).     mHelper.enableDeBUGLogging(true);     //create Listener     bListener = new BillingListener(mHelper,mContext);     // Start setup. This is asynchronous and the specifIEd Listener will be called once setup completes.     mHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() {         public voID onIabSetupFinished(IabResult result) {             if (!result.isSuccess()) {                 // There was a problem.                 return;             }                          getInventory(skus);         }     });         }...private voID getInventory(List<String> skuList) {    // Have we been disposed of in the meantime? If so,quit.    if (mHelper == null) return;    // IAB is fully set up. Now,let's get an inventory of stuff we own.    mHelper.queryInventoryAsync(true,skuList,bListener.mqueryFinishedListener);}

然后在查询完成时,调用这段代码:

IabHelper.queryInventoryFinishedListener mqueryFinishedListener = new IabHelper.queryInventoryFinishedListener() {   public voID onqueryInventoryFinished(IabResult result,Inventory inventory) {      if (result.isFailure()) {         // handle error         return;       }      ...   }};

但退回的库存是空的.这是logcat:

12-13 11:21:36.977: D/IabHelper(6034): Billing service connected.     12-13 11:21:36.977: D/IabHelper(6034): Checking for in-app billing 3 support.     12-13 11:21:36.987: D/IabHelper(6034): in-app billing version 3 supported for ***     12-13 11:21:36.987: D/IabHelper(6034): Subscriptions AVAILABLE.     12-13 11:21:36.987: D/IabHelper(6034): Starting async operation: refresh inventory     12-13 11:21:36.987: D/IabHelper(6034): querying owned items,item type: inapp     12-13 11:21:36.987: D/IabHelper(6034): Package name: ***     12-13 11:21:36.987: D/IabHelper(6034): Calling getPurchases with continuation token: null     12-13 11:21:36.997: D/IabHelper(6034): Owned items response: 0     12-13 11:21:36.997: D/IabHelper(6034): Continuation token: null     12-13 11:21:36.997: D/IabHelper(6034): querying SKU details.     12-13 11:21:37.097: D/IabHelper(6034): querying owned items,item type: subs     12-13 11:21:37.097: D/IabHelper(6034): Package name: ***     12-13 11:21:37.097: D/IabHelper(6034): Calling getPurchases with continuation token: null     12-13 11:21:37.097: D/IabHelper(6034): Owned items response: 0     12-13 11:21:37.097: D/IabHelper(6034): Continuation token: null     12-13 11:21:37.097: D/IabHelper(6034): querying SKU details.     12-13 11:21:37.097: D/IabHelper(6034): Ending async operation: refresh inventory

自我的inapp产品发布以来大约一周,所以这不是时间问题.
我试图清除应用数据,然后重启设备.

编辑:使用androID.test.purchased作为测试sku,一切正常.
编辑2:SKU是“非托管”

解决方法 我也遇到了这个问题,但是一旦我清除了Google Play应用的应用数据,它就解决了.使用adb:
adb shell pm clear com.androID.vending
总结

以上是内存溢出为你收集整理的Android应用内结算 – queryInventoryAsync返回0结果全部内容,希望文章能够帮你解决Android应用内结算 – queryInventoryAsync返回0结果所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1136188.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存