Обработка ошибок в Android SDK
Каждая ошибка, возвращаемая SDK, имеет тип AdaptyError.
Если эти решения не помогли, загляните в раздел Другие проблемы — там описаны шаги, которые стоит предпринять перед обращением в поддержку, чтобы мы могли помочь вам быстрее.
| Ошибка | Решение |
|---|---|
| UNKNOWN | Неизвестная или непредвиденная ошибка. |
| ITEM_UNAVAILABLE | Эта ошибка чаще всего возникает на этапе тестирования. Возможные причины: продукты отсутствуют в продакшне или пользователь не входит в группу тестировщиков в Google Play. |
| ADAPTY_NOT_INITIALIZED | SDK Adapty не активирован. Необходимо правильно настроить Adapty SDK с помощью метода Adapty.activate. |
| PRODUCT_NOT_FOUND | Продукт, запрошенный для покупки, недоступен в сторе. |
| INVALID_JSON | JSON локального резервного пейвола невалиден. Исправьте стандартный английский пейвол, затем замените недействительные локальные пейволы. Подробнее о том, как исправить пейвол, читайте в разделе Кастомизация пейвола с помощью Remote Config, а о замене локальных пейволов — в разделе Настройка локальных резервных пейволов. |
CURRENT_SUBSCRIPTION_TO_UPDATE _NOT_FOUND_IN_HISTORY | Исходная подписка, которую нужно заменить, не найдена среди активных подписок. |
| BILLING_SERVICE_TIMEOUT | Запрос превысил максимальное время ожидания до получения ответа от Google Play. Причиной может быть, например, задержка при выполнении действия, запрошенного вызовом Play Billing Library. |
| FEATURE_NOT_SUPPORTED | Запрошенная функция не поддерживается Play Store на данном устройстве. |
| BILLING_SERVICE_DISCONNECTED | Соединение клиентского приложения с сервисом Google Play Store через BillingClient было разорвано. |
| BILLING_SERVICE_UNAVAILABLE | Сервис Google Play Billing в данный момент недоступен. В большинстве случаев это означает проблему с сетевым подключением между клиентским устройством и серверами Google Play Billing. |
| BILLING_UNAVAILABLE | В процессе покупки возникла ошибка биллинга. Возможные причины: 1. Приложение Play Store на устройстве пользователя отсутствует или устарело. 2. Пользователь находится в неподдерживаемой стране. 3. Пользователь входит в корпоративный аккаунт, где администратор отключил возможность покупок. 4. Google Play не смог списать средства с платёжного метода пользователя (например, истёк срок действия кредитной карты). 5. Пользователь не авторизован в приложении Play Store. |
| DEVELOPER_ERROR | API используется некорректно. |
| BILLING_ERROR | Внутренняя проблема самого Google Play. |
| ITEM_ALREADY_OWNED | Продукт уже куплен. |
| ITEM_NOT_OWNED | Запрошенное действие с товаром не выполнено, так как он не принадлежит пользователю. |
| BILLING_NETWORK_ERROR | Проблема с сетевым соединением между устройством и системами Play. |
| NO_PRODUCT_IDS_FOUND | Ни один из продуктов пейвола недоступен в сторе. Если вы столкнулись с этой ошибкой, выполните следующие шаги:
|
| NO_PURCHASES_TO_RESTORE | Google Play не нашёл покупку для восстановления. |
| AUTHENTICATION_ERROR | Необходимо правильно настроить Adapty SDK с помощью метода Adapty.activate. |
| BAD_REQUEST | Некорректный запрос. Убедитесь, что вы выполнили все шаги, необходимые для интеграции с Google Play. |
| SERVER_ERROR | Ошибка сервера. |
| REQUEST_FAILED | Сетевая ошибка, которую не удаётся точно определить. |
| DECODING_FAILED | Не удалось декодировать ответ. Проверьте код и убедитесь, что передаваемые параметры корректны. Например, эта ошибка может указывать на использование недействительного API-ключа. |
| ANALYTICS_DISABLED | Обработка событий аналитики недоступна, так как вы отключили её. |
| WRONG_PARAMETER | Один или несколько параметров некорректны: пустое значение там, где оно недопустимо, неверный тип данных и т. д. |
Другие проблемы
Если вы ещё не нашли решение, можно попробовать следующее:
- Обновление SDK до последней версии: мы всегда рекомендуем обновляться до последних версий SDK — они более стабильны и содержат исправления известных проблем.
- Обратитесь в службу поддержки или получите помощь от других разработчиков на форуме поддержки.
- Напишите в поддержку на [email protected] или через чат: если вы не готовы обновлять SDK или это не помогло, свяжитесь с нашей командой поддержки. Обратите внимание, что проблема будет решена быстрее, если вы включите подробное логирование и поделитесь логами с командой. Также можно приложить соответствующие фрагменты кода.