嗨,我正在尝试将应用程序购买添加到我的应用程序中,我已经在开发人员控制台上设置了我的应用程序购买,这些设置为活动的,然后我已经查询了它们,昨天工作得很好,我检索到了所有的细节,但今天它返回为空。唯一改变的是我不得不卸载应用程序并重新运行它。我已经在应用程序和开发人员控制台上检查了我的skus,它们完全匹配,当我运行IabHelper start setup时,我得到的结果是ok。然后我调用IabHelper.QueryInventoryFinishedListener,返回的结果是ok,但当我尝试访问清单中的任何内容时,它返回为null。有人知道为什么吗?或者如果我在代码中做了一些错误的事情?
在我的on Create()中;
mHelper = new IabHelper(this, base64EncodedPublicKey);
mHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() {
public void onIabSetupFinished(IabResult result) {
if (!result.isSuccess()) {
// Oh noes, there was a problem.
Log.v("Menu", "Problem setting up In-app Billing: " + result);
}
// Hooray, IAB is fully set up!
Log.v("Menu", "INAPP BILLING SETUP COMPLETE: " + result);
ArrayList<String> skuList = new ArrayList<String> ();
skuList.add("myapp.consumable.inapppurchase_id_1");
skuList.add("myapp.consumable.inapppurchase_id_2");
skuList.add("myapp.consumable.inapppurchase_id_3");
skuList.add("myapp.permanant.inapppurchase_id_6");
skuArray = new JSONArray(skuList);
mHelper.queryInventoryAsync(true, skuList, mQueryFinishedListener);
}
});下面是我的QueryListener代码
IabHelper.QueryInventoryFinishedListener mQueryFinishedListener = new IabHelper.QueryInventoryFinishedListener() {
public void onQueryInventoryFinished(IabResult result, Inventory inventory)
{
if (result.isFailure()) {
Log.v("Menu", "RESULT FALIURE");
return;
}
Log.v("Menu", "this +" + skuArray);
Log.v("Menu", "Inventory +" + inventory);
for(int i = 0; i < skuArray.length(); i++){
try {
String SKU = skuArray.getString(i);
if(inventory.getSkuDetails(SKU) != null){
Log.v("Menu", "SKU = " + SKU);
Log.v("Menu", "SKU" + SKU + "= " + inventory.getSkuDetails(SKU));
updateProductData("price",inventory.getSkuDetails(SKU).getPrice(),i);
updateProductData("id",inventory.getSkuDetails(SKU).getSku(),i);
}else{
Log.v("Menu", "SKU RETURNED NULL" + SKU);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}; 发布于 2014-05-29 15:47:14
好的,我和谷歌谈过这个问题。他们说,他们已经做了修改,要求在添加应用程序购买之前发布apk,他们建议将apk上传到alpha测试通道并发布(而不是以草稿模式)。
我会试一试,如果有效的话,我会给你反馈
发布于 2014-05-30 14:10:09
在我将我的alpha应用程序发布到google play之后,账单又开始起作用了。
https://stackoverflow.com/questions/23914789
复制相似问题