Как отобразить диалоговое окно обновления в приложении, когда пользователь снова отклонил обновление через несколько дней? - PullRequest
0 голосов
/ 26 мая 2020

Я реализовал функцию отображения гибкого диалогового окна обновления в приложении, когда обновление доступно. Но когда пользователь решает не обновлять приложение, и приложение перезапускается, диалоговое окно появляется снова. Как я могу снова отобразить диалоговое окно через несколько дней, когда пользователь решил не устанавливать обновление?

1 Ответ

1 голос
/ 26 мая 2020

Вы можете использовать SharedPreferences в Android. Обычно, когда вы запрашиваете гибкое обновление, сохраните дату в SharedPreferences и сравните текущий день с днем, хранящимся в общих предпочтениях, когда пользователь использует приложение, чтобы решить, когда запрашивать следующее обновление.

Я бы посоветовал вам запрашивать только один раз, поскольку многократный запрос будет раздражать ваших пользователей. (версия, которую я храню в Firebase, поэтому я также могу скрыть FlexibleUpdates для некоторых версий) выше, чем версия, установленная на телефоне пользователя. Ваш вариант использования требует, чтобы вы удалили условие входа и проверку разницы в датах вместо проверки того, запрашивалось ли обновление раньше.

Вспомогательный класс для SharedPreferences

class SharedPreference(val context: Context) {
    private val PREFS_NAME = "PREFERENCES"
    val sharedPref: SharedPreferences = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE)

    fun save(KEY_NAME: String, value: String) {
        val editor: SharedPreferences.Editor = sharedPref.edit()

        editor.putString(KEY_NAME, value)

        editor.apply()
    }


    fun getString(KEY_NAME: String): String? {

        return sharedPref.getString(KEY_NAME, null)
    }
}
...