Initializer

public interface Initializer<T>

Known direct subclasses
EmojiCompatInitializer

Initializer for configuring EmojiCompat with the system installed downloadable font provider.

ProcessLifecycleInitializer

Initializes ProcessLifecycleOwner using androidx.startup.

ProfileInstallerInitializer

Startup library initializer that installs an AOT profile several seconds after launch.

StartupTracingInitializer

Enables tracing at app startup if configured prior to app starting

WorkManagerInitializer

Initializes androidx.work.WorkManager using androidx.startup.


Initializers can be used to initialize libraries during app startup, without the need to use additional android.content.ContentProviders.

Parameters
<T>

The instance type being initialized

Summary

Public methods

abstract @NonNull T

Initializes and a component given the application Context

abstract @NonNull List<Class<Initializer<Object>>>

Public methods

create

Added in 1.0.0
abstract @NonNullcreate(@NonNull Context context)

Initializes and a component given the application Context

Parameters
@NonNull Context context

The application context.

dependencies

Added in 1.0.0
abstract @NonNull List<Class<Initializer<Object>>> dependencies()
Returns
@NonNull List<Class<Initializer<Object>>>

A list of dependencies that this Initializer depends on. This is used to determine initialization order of Initializers. For e.g. if a Initializer `B` defines another Initializer `A` as its dependency, then `A` gets initialized before `B`.