【问题标题】:Does app launch LAUNCH Activity after app upgrade?应用升级后应用会启动 LAUNCH Activity 吗?
【发布时间】:2017-02-09 15:00:45
【问题描述】:

在我的下一个应用程序版本中,我需要一个布尔标志 enableNotification。因此,为了在用户在 MainActivity 中启动我的应用程序后,我的应用程序中的一切都可以正常工作,它会将此标志设置为 false,并将其保存到 SharedPreferences。如果它没有转到 MainActivity 并将此标志设置为 Shared,我的应用程序将无法正常工作。

所以我的问题是,在用户将他在 Google Play 上的应用升级到较新版本(旧版本在 SharedPref 中没有此标志)后,它是否会首先进入 MainActivity 而不是用户之前的 Activity(第二活动,第三活动...)?或者最好将此标志保存到数据库中,所以在onCreate() 中将此标志设置为false?

【问题讨论】:

    标签: android upgrade


    【解决方案1】:

    在 Android 上更新应用程序会强制关闭它。
    所以下次用户打开应用时,它会启动你在 Android Manifest 中用ACTION_MAIN Intent Filter 声明的Activity(可能是MainActivity

    【讨论】:

      【解决方案2】:

      如果您的应用依赖于 SharedPreference 'enableNotification' 才能工作,那么您需要先检查 Application 类。

      如果应用程序之前从未有过值,则首先初始化 Application 类中的值。签入应用程序onCreate(),因为如文档所述,在 Activity 之前调用了 Application 类:

      void onCreate()

      在应用程序启动时调用,在任何活动、服务之前, 或接收者对象(不包括内容提供者)已被创建。 实现应该尽可能快(例如使用惰性 初始化状态)因为在这个函数中花费的时间 直接影响开始第一个活动的表现, 服务或过程中的接收者。如果您覆盖此方法,请 一定要调用 super.onCreate()。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-11
      • 1970-01-01
      • 1970-01-01
      • 2012-09-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多