Интерфейс оплаты в Google Play через Unity IAP не появится после перехода в фоновый режим - PullRequest
0 голосов
/ 03 апреля 2020

В настоящее время я пытаюсь использовать биллинг Google в приложении в своем проекте. Теперь есть сложная проблема. Я нажал кнопку, чтобы открыть интерфейс оплаты, и переключил приложение в фоновый режим до появления интерфейса оплаты, затем при повторном открытии приложения интерфейс оплаты не появился и больше не будет отображаться, пока я не перезагружу приложение. Я провел некоторое исследование и обнаружил, что это может быть связано со следующим фрагментом кода

public void Purchase(ProductDefinition product, String developerPayload) {
    if (this.purchaseInProgress) {
      PurchaseFailureDescription description = new PurchaseFailureDescription(product.storeSpecificId, PurchaseFailureReason.ExistingPurchasePending);
      this.unityPurchasing.OnPurchaseFailed(description);
      return;
    }

Код выше приведен в com.unity.purchasing.googleplay.GooglePlayPurchasing. И причина проблемы, как я подозреваю, заключается в том, что как только я переключаюсь в фоновый режим, прежде чем появится интерфейс оплаты, purchaseInProgress будет всегда иметь значение true, и мне не разрешено начинать другую транзакцию, пока предыдущая еще выполняется , Я не могу изменить этот кусок кода, потому что он находится внутри googleplay SDK, который обеспечивает Unity. Есть идеи, как решить эту проблему?

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