Проверка возможности работы с пуш-уведомлениями

Для проверки доступности провайдеров пуш-уведомлений нужно вызвать метод checkAvailability (context).

RuStoreUniversalPushClient.checkAvailability(this)
            .addOnCompleteListener(object : OnCompleteListener<Map<String, Boolean>> {
                override fun onSuccess(result: Map<String, Boolean>) {
                    Log.w(tag, "get availability success ${result}")
                }
 
                override fun onFailure(throwable: Throwable) {
                    Log.e(tag, "get tokens err: ${throwable}")
                }
            })

result — это словарь с ключами:

public const val UNIVERSAL_FCM_PROVIDER: String = "firebase"
public const val UNIVERSAL_HMS_PROVIDER: String = "hms"
public const val UNIVERSAL_RUSTORE_PROVIDER: String = "rustore"

Проверить доступность конкретного провайдера пуш-уведомлений можно так:

if (result[UNIVERSAL_HMS_PROVIDER] ?: false) {
    // hms провайдер доступен
}
Обновлено 27 апреля 2023 г.
Was this information helpful?