Google Play Billing: querySkuDetailsAsyn c возвращает неверные результаты - PullRequest
0 голосов
/ 26 апреля 2020

У меня странная проблема с покупками в приложении на Android.

Прежде всего, я использую эту оболочку: https://github.com/dooboolab/react-native-iap, поскольку приложение ReactNative based.

Покупки в большинстве случаев работают нормально. Но иногда в сбоях я вижу странные сбои, которые происходят, когда я пытаюсь завершить покупку. Копаясь в журналах cra sh и хлебных крошках, я обнаружил, что первоначальный вызов функции querySkuDetailsAsync (что здесь делается https://github.com/dooboolab/react-native-iap/blob/master/android/src/main/java/com/dooboolab/RNIap/RNIapModule.java) возвращает совершенно неверные данные.

Буквально у меня есть разовая покупка, а не продукт на основе подписки. Но, глядя на хлебную крошку и ответ, я вижу следующий ответ для всех разбившихся пользователей:

{
  "productId": "my.inapp.product.id",
  "type":"inapp",
  "price":"0.52",
  "title":"product id",
  "description":"product id",
  "price_amount_micros":52000000,
  "price_currency_code":"USD",
  "subscriptionPeriod":"365",
  "freeTrialPeriod":"365"
}

Все здесь выключено, только правильное значение productId, все остальное неверно - цена и т. Д. на. Есть также freeTrialPeriod, который недействителен для моего продукта, так как это не подписка.

И как только я не провожу проверку на стороне сервера, покупка проходит, но, очевидно, без оплаты.

Глядя на это, у меня есть предположение, что это что-то вроде хака, но не уверен на 100%, возможно, у вас есть идеи или подсказки по этому поводу?

Большое спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...