Android inventory.getSkuDetails () возвращает null

Привет, я пытаюсь добавить покупки приложений в свое приложение. Я установил мои покупки в приложении на консоли разработчика, которые настроены на активность. Затем я спросил их, которые вчера отлично работали, и я получил все подробности, но сегодня он возвращается Как null. Единственное, что изменилось, это то, что мне пришлось удалить приложение и повторно запустить его. Я проверил свой skus как в приложении, так и на консоли разработчика, которые точно совпадают, когда я запускаю настройку запуска IabHelper. Я получаю результат ok. И затем я вызываю IabHelper.QueryInventoryFinishedListener, и это возвращает результат как нормально, но когда я пытаюсь получить доступ к чему-либо из инвентаря, он возвращается как null. Кто-нибудь знает почему? Или если я ошибаюсь в своем коде?

В my 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(); } } } }; с 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(); } } } }; 

Solutions Collecting From Web of "Android inventory.getSkuDetails () возвращает null"

Хорошо, я говорил с Google об этой проблеме. И они говорят, что они внесли изменения, которые требуют, чтобы apk был опубликован, прежде чем добавлять покупки в приложениях, они рекомендуют загружать apk в канал альфа-тестирования и публиковать (не в режиме черновика).

Я дам ему попробовать и вернуть, если он работает

После того, как я опубликовал свой альфа-апк для игры в Google, биллинг снова начал работать.