Принудительное обновление

Проверка доступности

После получения AppUpdateInfo можно проверить доступность принудительного обновления.

Пример вызова метода registerListener()

if (appUpdateInfo.isUpdateTypeAllowed(IMMEDIATE)) {
    TODO()
}

Результат функции isUpdateTypeAllowed рекомендуется использовать для принятия решения о запуске принудительного обновления, но данный результат не влияет на возможность запуска сценария. Необходимость запуска сценария обновления может происходить по вашей внутренней логике.

Запуск сценария

Пример вызова метода startUpdateFlow()

updateManager
    .startUpdateFlow(appUpdateInfo, AppUpdateOptions.Builder().appUpdateType(IMMEDIATE).build())
    .addOnSuccessListener { resultCode ->
 
    }
    .addOnFailureListener { throwable ->
 
    }

resultCode (Int) :

  • Activity.RESULT_OK (-1) — обновление выполнено, код может не быть получен, т.к. приложение в момент обновления завершается.
  • Activity.RESULT_CANCELED (0) — флоу прервано пользователем или произошла ошибка. Предполагается, что при получении этого кода следует завершить работу приложения.
  • ActivityResult.ACTIVITY_NOT_FOUND (2)  RuStore не установлен, либо установлена версия, которая не поддерживает принудительное обновление (RuStore versionCode < 191)

throwable  ошибка старта сценария обновления. Детальнее со списком ошибок можно ознакомиться в разделе Возможные ошибки

Обновлено 26 июля 2023 г.
Was this information helpful?