Ошибка обновления iventory (запрос цен на предметы). (Ответ: 6: ошибка)

Я столкнулся с такой же проблемой, как и

Биллинг в приложении v3 не может запрашивать элементы без сетевого подключения или в режиме полета / полета

Это не всегда происходит. Вам нужно переключить телефон в режим полета или отключить Wi-Fi, подождать несколько часов, только проблема возникнет. Отобразится следующее сообщение об ошибке.

Не удалось выполнить запрос iventory: IabResult: ошибка обновления iventory (запрос цен на товары). (Ответ: 6: ошибка)

Автор предложил использовать

List<String> skulist = new ArrayList<String>(); skulist.add("my_sku_name1"); skulist.add("my_sku_name2"); mHelper.queryInventoryAsync(true, skulist, mGotInventoryListener); 

решить проблему.

Однако это не работает для меня. Такая же проблема все еще возникает.

Любое обходное решение этой проблемы? Благодарю.

Solutions Collecting From Web of "Ошибка обновления iventory (запрос цен на предметы). (Ответ: 6: ошибка)"

Как сказал Джерри в своем комментарии, вы можете обойти это, позвонив

MHelper.queryInventoryAsync (false, mGotInventoryListener);

вместо

mHelper.queryInventoryAsync (mGotInventoryListener);

Я отключил все сетевые подключения с моего устройства (более одного дня) и могу надежно воспроизвести / исправить проблему с этим единственным изменением параметра. Похоже, что сама покупка будет храниться в кеше дольше (на неопределенный срок?) Службой биллинга в приложении, чем детали скрома, такие как цена.

Похоже, что в Google Play закончились кэшированные предметы инвентаря. Это может быть подробная информация о том, как работает приложение Google Play.

Ошибка 6 определяется как BILLING_RESPONSE_RESULT_ERROR.

Если для вас важно предлагать инвентарь для покупки даже без подключения к Интернету, вам может понадобиться кэшировать последние возвращенные результаты самостоятельно и использовать их в случае сбоя запроса.

Однако покупка также не будет работать в таком сценарии, так зачем беспокоиться?