Обработка ошибок
Возникающие ошибки передаются в обработчик onFailure методов SDK.
Структура ошибки:
Структура ошибки
USTRUCT(BlueprintType) struct RUSTORECORE_API FURuStoreRuStoreError { GENERATED_USTRUCT_BODY() FURuStoreRuStoreError() { name = "" ; description = "" ; } UPROPERTY(BlueprintReadOnly) FString name; UPROPERTY(BlueprintReadOnly) FString description; }; |
- name — название ошибки.
- description — описание ошибки.
Возможные ошибки:
- RuStoreNotInstalledException — на устройстве пользователя не установлен RuStore.
- RuStoreOutdatedException — RuStore установленный на устройстве пользователя не поддерживает платежи.
- RuStoreUserUnauthorizedException — пользователь не авторизован в RuStore.
- RuStoreApplicationBannedException — приложение забанено в RuStore.
- RuStoreUserBannedException — пользователь забанен в RuStore.
- RuStoreException — базовая ошибка RuStore от которой наследуются остальные ошибки.
При вызове метода PurchaseProduct ошибки обрабатываются автоматически.
Если при инициализации SDK был передан параметр allowNativeErrorHandling == true, при возникновении ошибки кроме вызова соответствующего обработчика onFailure она передается в метод resolveForBilling нативного SDK для показа диалога с ошибкой пользователю:
Обработка ошибок
public fun RuStoreException.resolveForBilling(context: Context) |
Изменить это поведение после инициализации можно установкой свойства AllowNativeErrorHandling:
Запрет нативной обработки ошибок
RuStoreBillingClient::Instance()->AllowNativeErrorHandling = false ; |
Обновлено 17 июля 2023 г.
Was this information helpful?