安卓-应用程序的onCreate()方法';s android.app.Application子类不总是被调用?
我最近看到了一个关于Android生命周期常见误解的演示,演示者声称,如果备份管理器正在运行,注册的安卓-应用程序的onCreate()方法';s android.app.Application子类不总是被调用?,android,android-lifecycle,Android,Android Lifecycle,我最近看到了一个关于Android生命周期常见误解的演示,演示者声称,如果备份管理器正在运行,注册的android.app.Application子类的onCreate()方法可能永远不会被调用,而只会使用基类,这可以通过检查ContextWrapper#getApplicationContext()的返回值来确认 我在任何地方都找不到关于这个的任何文档,而且我以前从未遇到过这个问题。然而,演示者似乎声称这不是一个bug,他说这种行为“有点文档化,但非常隐蔽” 我真的很想知道这是不是真的,因为我
android.app.Application
子类的onCreate()
方法可能永远不会被调用,而只会使用基类,这可以通过检查ContextWrapper#getApplicationContext()
的返回值来确认
我在任何地方都找不到关于这个的任何文档,而且我以前从未遇到过这个问题。然而,演示者似乎声称这不是一个bug,他说这种行为“有点文档化,但非常隐蔽”
我真的很想知道这是不是真的,因为我工作的应用程序在很大程度上依赖于其注册的
android.app.application
子类,我预计这种行为会导致严重的问题。我可以依赖我的应用程序注册的android.app.Application
子类的onCreate()
方法在启动所有其他android组件之前始终运行吗?我遇到过的唯一一种从未调用onCreate()的方法是:
对我来说,应用程序可以在不重新初始化活动的情况下恢复其数据集是毫无意义的。忽略onCreate()或多或少是毫无意义的。活动将始终遵循其生命周期,我从未遇到过它不遵循生命周期的任何时候。如果当时正在进行备份或恢复,那么这可能是有意义的。我想唯一的方法就是测试它。我遇到的唯一一种永远不会调用onCreate()的方法是:
对我来说,应用程序可以在不重新初始化活动的情况下恢复其数据集是毫无意义的。忽略onCreate()或多或少是毫无意义的。活动将始终遵循其生命周期,我从未遇到过它不遵循生命周期的任何时候。如果当时正在进行备份或恢复,那么这可能是有意义的。我想唯一的办法就是测试它。关键是“在我所有其他Android组件启动之前”。除了
备份代理
,我不希望在进行备份时运行您的任何代码。我有关于这个场景的传言,我对Andrew有一定的信心,所以他可能是对的。关键是“在我所有其他Android组件启动之前”。除了备份代理
,我不希望在进行备份时运行您的任何代码。我有关于这个场景的谣言,我对安德鲁有相当的信心,所以他可能是对的。OP不是问活动。onCreate()
,他是问应用程序。onCreate()
。OP不是问活动。onCreate()
,他是问应用程序。onCreate()
。