文档:https://developer.android.com/topic/libraries/app-startup
App Startup 库提供了一种在应用程序启动时初始化组件的简单、高效的方法。
库开发人员和应用程序开发人员都可以使用 App Startup 来简化启动顺序并明确设置初始化顺序。
App Startup 允许您定义共享单个内容提供者的组件初始值设定项,而不是为您需要初始化的每个组件定义单独的内容提供程序。这可以显着缩短应用程序启动时间。
应用程序和库通常依赖于在应用程序启动时立即初始化组件。
可以通过使用内容提供程序来初始化每个依赖项来满足此需求,但内容提供程序的实例化成本很高,并且可能会不必要地减慢启动顺序。
此外,Android 以不确定的顺序初始化内容提供程序。
App Startup 提供了一种在应用程序启动时初始化组件并显式定义它们的依赖项的更高效的方法。
dependencies { implementation "androidx.startup:startup-runtime:1.1.0" }
要使用 App Startup 在启动时自动初始化组件,您必须为应用程序需要初始化的每个组件定义一个组件初始化程序。
可以通过创建实现Initializer<T>接口的类来定义每个组件初始值设定项 。这个接口定义了两个重要的方法: