Troubleshoot purchases in Android SDK

Этот гайд поможет вам решить распространённые проблемы при реализации покупок вручную через Android SDK.

makePurchase завершается успешно, но профиль не обновляется

Проблема: Метод makePurchase выполняется успешно, однако профиль пользователя и статус подписки в Adapty не обновляются.

Причина: Как правило, это указывает на неполную настройку Google Play Store или ошибки конфигурации.

Решение: Убедитесь, что вы выполнили все шаги настройки Google Play.

makePurchase вызывается дважды

Проблема: Метод makePurchase вызывается несколько раз для одной и той же покупки.

Причина: Обычно это происходит, когда процесс покупки запускается несколько раз из-за проблем с управлением состоянием UI или быстрых повторных действий пользователя.

Решение: Убедитесь, что вы выполнили все шаги настройки Google Play.

AdaptyError.cantMakePayments в режиме Observer

Проблема: При использовании makePurchase в режиме observer возникает ошибка AdaptyError.cantMakePayments.

Причина: В режиме observer покупки должны обрабатываться на вашей стороне — метод makePurchase из Adapty использовать не следует.

Решение: Если вы используете makePurchase для обработки покупок, отключите режим observer. Вам нужно либо использовать makePurchase, либо обрабатывать покупки самостоятельно в режиме observer. Подробнее см. в разделе Реализация режима Observer.

Ошибка Adapty: (code: 103, message: Play Market request failed on purchases updated: responseCode=3, debugMessage=Billing Unavailable, detail: null)

Проблема: Вы получаете ошибку о недоступности биллинга от Google Play Store.

Причина: Эта ошибка не связана с Adapty. Это ошибка Google Play Billing Library, которая означает, что биллинг недоступен на устройстве.

Решение: Эта ошибка не связана с Adapty. Подробнее о ней можно узнать в документации Play Store: Handle BillingResult response codes | Play Billing | Android Developers.

Not found makePurchasesCompletionHandlers

Проблема: Возникают проблемы — makePurchasesCompletionHandlers не найден.

Причина: Как правило, это связано с проблемами при тестировании в песочнице.

Решение: Создайте нового пользователя в песочнице и повторите попытку. Обычно это решает проблемы с обработчиком завершения покупки в песочнице.

Другие проблемы

Проблема: Вы сталкиваетесь с другими проблемами при покупках, которые не описаны выше.

Решение: При необходимости обновите SDK до последней версии, следуя гайдам по миграции. Многие проблемы уже исправлены в новых версиях SDK.