在Android应用程序中使用启动画面的启动顺序

问题描述:

我必须更改现有的应用程序。我需要让应用程序以初始化完成时显示的启动画面开始。 (这可能需要一段时间,因此闪屏)在Android应用程序中使用启动画面的启动顺序

但是我看到的是内容提供者的onCreate在应用程序的onCreate被调用之前被调用。此内容提供者必须依赖初始化应用程序时加载的数据。

任何人都可以告诉我应用程序启动时采取了哪些步骤吗? 此外有谁能告诉我如何克服这种catch-22情况?

我需要让应用程序以启动画面开始,并在完成各种初始化时显示启动画面。 (这可能需要一段时间,因此闪屏)

初始屏幕are considered to be poor form。允许用户进入某些应用程序,即使您必须阻止某些等待某些数据从Internet上加载的部分。

任何人都可以告诉我应用程序启动时采取了哪些步骤吗?

您的Application对象和所有ContentProvider实现在任何其他事情发生之前(例如,创建活动)创建。从面向开发人员的代码的角度来看,就是这样 - 框架本身做更多的事情,但没有什么会触发我们的代码回调。

此外有谁能告诉我如何克服这种catch-22情况?

摆脱ContentProvider,因为你可能不需要它。

或者,将ContentProvider重写为不需要从其onCreate()方法中“加载的数据”。

或者,重新构建应用程序以使用缓存,同步等,以便应用程序可以在一开始就没有限制地启动。作为奖励,这一个可以让你摆脱闪屏。

+0

感谢您的快速响应。因为它是一个现有的应用程序(开源),我们将基于该应用程序开发一个新应用程序,所以我们希望尽可能少地改变代码,以便新版本的基本代码不需要大量的重构。 – user1221261