У меня возникла странная проблема при покупке в приложении IInAppBillingService version 3
неделю назад.
Ниже приведены шаги, которым я следовал:
Примечание. Я выполнил эти шаги, потому что у некоторых из моих пользователей такая же проблема с сетью, но покупка была завершена. Но приложение все еще показывает кнопку Купить для этого продукта. Итак, чтобы воспроизвести проблему, мне пришлось выполнить следующие действия.
- Установлен отлаживаемый подписанный APK поверх версии магазина воспроизведения.
- Нажмите на товар, чтобы купить
- Открыто всплывающее окно игрового магазина с кнопкой Купить. Нажал
Buy
в купленном всплывающем окне - Я потерял сеть при покупке продукта. Появилось всплывающее окно с
No Internet Connection
- Нажал
ok
во всплывающем окнеNo Internet Connection
. Вернитесь к моему заявлению. - Снова нажал на товар, чтобы купить.
- Теперь у вас есть
Error --> You already owned this item
Но проблема в том, что я не получил результатов покупки в приложении mPurchaseFinishedListener callback
. Я получил Null. Даже я получил письмо от Google и проверил, куплен он или нет в Google Play store --> Menu --> Account --> Order History
Мой продукт Managed Product
, но пользователь может приобрести его несколько раз. Поэтому при каждом открытии продукта или после завершения покупки потребляйте желаемую покупку на основе skuId, если она приобретена.
if (purchase != null && purchase.getItemType().equalsIgnoreCase("inapp"))
{
mHelper.consumeAsync(purchase, mConsumeFinishedListener);
}
Теперь я не могу потреблять продукт или даже не могу его купить. Почему игровой магазин завершил покупку, но не вернул сведения о покупке для обратного вызова?
Насколько я знаю, если товар уже приобретен для этого SKUID, он должен вернуть детали покупки. Но в моем случае он не возвращает детали покупки.
Может ли кто-нибудь помочь мне решить эту проблему?