Android 12 Developer Preview is here! Try it out, and give us your feedback!

ComponentActivity

open class ComponentActivity : ComponentActivity, ContextAware, LifecycleOwner, ViewModelStoreOwner, HasDefaultViewModelProviderFactory, SavedStateRegistryOwner, OnBackPressedDispatcherOwner, ActivityResultRegistryOwner, ActivityResultCaller
androidx.activity.ComponentActivity

Base class for activities that enables composition of higher level components.

Rather than all functionality being built directly into this class, only the minimal set of lower level building blocks are included. Higher level components can then be used as needed without enforcing a deep Activity class hierarchy or strong coupling between components.

Summary

Public constructors

Default constructor for ComponentActivity.

<init>(@LayoutRes contentLayoutId: Int)

Alternate constructor that can be used to provide a default layout that will be inflated as part of super.onCreate(savedInstanceState).

Public methods
open Unit
addContentView(view: View!, params: LayoutParams!)

Unit

Add a new OnContextAvailableListener for receiving a callback for when this class is associated with a android.content.Context.

ActivityResultRegistry

Get the ActivityResultRegistry associated with this activity.

open ViewModelProvider.Factory

Returns the default ViewModelProvider.Factory that should be used when no custom Factory is provided to the ViewModelProvider constructors.

open Any?

Return the value previously returned from onRetainCustomNonConfigurationInstance().

open Lifecycle

Returns the Lifecycle of the provider.

OnBackPressedDispatcher

Retrieve the OnBackPressedDispatcher that will be triggered when onBackPressed() is called.

SavedStateRegistry

open ViewModelStore

Returns the ViewModelStore associated with this activity

open Unit

Called when the activity has detected the user's press of the back key.

open Unit
onRequestPermissionsResult(requestCode: Int, @NonNull permissions: Array<String!>, @NonNull grantResults: IntArray)

open Any?

Use this instead of onRetainNonConfigurationInstance().

Any?

Retain all appropriate non-config state.

open Context?

ActivityResultLauncher<I>
registerForActivityResult(@NonNull contract: ActivityResultContract<I, O>, @NonNull registry: ActivityResultRegistry, @NonNull callback: ActivityResultCallback<O>)

ActivityResultLauncher<I>
registerForActivityResult(@NonNull contract: ActivityResultContract<I, O>, @NonNull callback: ActivityResultCallback<O>)

Unit

open Unit

open Unit
setContentView(@LayoutRes layoutResID: