【问题标题】:Android: Is onResume always called after onCreate?Android:onResume 是否总是在 onCreate 之后调用?
【发布时间】:2012-08-24 20:21:23
【问题描述】:

我需要知道在至少调用一次onCreate 之前是否会调用onResume 的实例。谢谢。

编辑:从活动生命周期来看,似乎并非如此。但我想仔细检查一下。

【问题讨论】:

  • 在 Google Play“Android Vitals / ANR & Crashes”部分我注意到,onResumecallActivityOnResume 调用,而之前没有调用 onCreate - 这导致我的应用程序出现 NPE。
  • 这里有同样的问题。我的单例对象中有一个ID,它在onCreate 中初始化。但是在 Crashlytics 中有一个 NullPointerException,它显示我的 ID 在调用 onResume 时为空。

标签: android


【解决方案1】:

onResume() 永远不会在 onCreate() 之前被调用。

Activity Lifecycle了解更多信息

【讨论】:

    【解决方案2】:

    onResume() 在活动进入前台时总是会被调用,但它永远不会onCreate()之前被执行。

    【讨论】:

    • onResume() 也会在第一次被调用,当活动被创建时,对吧?
    • 我认为是的。我正在尝试一种方法来阻止它
    【解决方案3】:

    【讨论】:

      【解决方案4】:

      我遇到了一个问题,其中覆盖的 onCreate 没有被调用。我尝试调试和记录,发现 oncreate 没有被调用。

      原来我覆盖了错误的 onCreate

      @Override
          public void onCreate(@Nullable Bundle savedInstanceState, @Nullable PersistableBundle persistentState) {
              super.onCreate(savedInstanceState, persistentState);
          }
      

      这是正确的。

      @Override
          protected void onCreate(@Nullable Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
          }
      

      张贴希望它可以帮助一些可怜的灵魂。 :)

      所以正确的 onCreate() 总是会在 onResume 之前被调用

      【讨论】:

        【解决方案5】:

        注意:这个回答只是补充the accepted answers的一个补充。

        正如之前的答案所说:

        onResume() will never be called before onCreate().

        Activity LifecycleStarting an Activity 中了解更多信息。

        下面是Activity生命周期的完整图片,包括来自android-lifecycleFragment Lifecycle

        【讨论】:

          【解决方案6】:

          活动有自己的生命周期。只需阅读并查看这里的漂亮图表:

          http://developer.android.com/reference/android/app/Activity.html

          onResume 不假设在 onCreate 之前运行,所以你假设正确。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2022-11-17
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多