FragmentActivity

public class FragmentActivity extends ComponentActivity implements ActivityCompat.OnRequestPermissionsResultCallback

Known direct subclasses
AppCompatActivity

Base class for activities that wish to use some of the newer platform features on older Android devices.

BaseCarAppActivity

Core logic for CarAppLibrary Activity interaction with a host.

LauncherActivity

This class handles providing the right launcher activity when running native applications and Car App Library applications.

Known indirect subclasses
CarAppActivity

The class representing a car app activity in the main display.


Base class for activities that want to use the support-based Fragments.

Known limitations:

  • When using the <fragment> tag, this implementation can not use the parent view's ID as the new fragment's ID. You must explicitly specify an ID (or tag) in the <fragment>.

Summary

Public constructors

Default constructor for FragmentActivity.

@ContentView
FragmentActivity(@LayoutRes int contentLayoutId)

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

Public methods

boolean
boolean
void
dump(
    @NonNull String prefix,
    @Nullable FileDescriptor fd,
    @NonNull PrintWriter writer,
    @Nullable String[] args
)

Print the Activity's state into the given stream.

T
<T extends ComponentActivity.ExtraData> getExtraData(Class<T> extraDataClass)

Retrieves a previously set ExtraData by class name.

@NonNull FragmentManager

Return the FragmentManager for interacting with fragments associated with this activity.

@NonNull LoaderManager

This method is deprecated.

Use LoaderManager.getInstance(this).

void

This method is deprecated.

The responsibility for listening for fragments being attached has been moved to FragmentManager.

@Nullable View
onCreateView(
    @NonNull String name,
    @NonNull Context context,
    @NonNull AttributeSet attrs
)
@Nullable View
onCreateView(
    @Nullable View parent,
    @NonNull String name,
    @NonNull Context context,
    @NonNull AttributeSet attrs
)
boolean
onMenuItemSelected(int featureId, @NonNull MenuItem item)
void
@CallSuper
onRequestPermissionsResult(
    int requestCode,
    @NonNull String[] permissions,
    @NonNull int[] grantResults
)

{@inheritDoc}

void

Hook in to note that fragment state is no longer saved.

void

Store an instance of ExtraData for later retrieval by class name via getExtraData.

void

When makeSceneTransitionAnimation was used to start an Activity, callback will be called to handle shared elements on the launched Activity.

void

When makeSceneTransitionAnimation was used to start an Activity, listener will be called to handle shared elements on the launching Activity.

void
startActivityFromFragment(
    @NonNull Fragment fragment,
    @NonNull Intent intent,
    int requestCode
)

Called by Fragment.startActivityForResult() to implement its behavior.

void
startActivityFromFragment(
    @NonNull Fragment fragment,
    @NonNull Intent intent,
    int requestCode,
    @Nullable Bundle options
)

Called by Fragment.startActivityForResult() to implement its behavior.

void
startIntentSenderFromFragment(
    @NonNull Fragment fragment,
    @NonNull IntentSender intent,
    int requestCode,
    @Nullable Intent fillInIntent,
    int flagsMask,
    int flagsValues,
    int extraFlags,
    @Nullable Bundle options
)

This method is deprecated.

Fragments should use registerForActivityResult with the StartIntentSenderForResult contract.

boolean
abstract boolean

Expected to call into the super implementation of dispatchKeyEvent.

void

Reverses the Activity Scene entry Transition and triggers the calling Activity to reverse its exit Transition.

void

This method is deprecated.

Call invalidateOptionsMenu directly.

void

Support library version of postponeEnterTransition that works only on API 21 and later.

void

Support library version of startPostponedEnterTransition that only works with API 21 and later.

final void

This method is deprecated.

there are no longer any restrictions on permissions requestCodes.

Protected methods

void
@CallSuper
onActivityResult(int requestCode, int resultCode, @Nullable Intent data)

{@inheritDoc}

void
onCreate(@Nullable Bundle savedInstanceState)

{@inheritDoc}

void

Destroy all fragments.

void

Dispatch onPause() to fragments.

void

Dispatch onResume() to fragments.

void

Dispatch onResume() to fragments.

void

This is the fragment-orientated version of onResume that you can override to perform operations in the Activity at the same point where its fragments are resumed.

void

Dispatch onStart() to all fragments.

void

Dispatch onStop() to all fragments.

final boolean
shouldDumpInternalState(String[] args)

Checks if the internal state should be dump, as some special args are handled by Activity itself.

Extension functions

final @NonNull BiometricPrompt.AuthenticationResult
Class2BiometricAuthExtensionsKt.authenticateWithClass2Biometrics(
    @NonNull FragmentActivity receiver,
    @NonNull CharSequence title,
    @NonNull CharSequence negativeButtonText,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired
)

Prompts the user to authenticate with a Class 2 biometric (e.g. fingerprint, face, or iris).

final @NonNull AuthPrompt
Class2BiometricAuthExtensionsKt.startClass2BiometricAuthentication(
    @NonNull FragmentActivity receiver,
    @NonNull CharSequence title,
    @NonNull CharSequence negativeButtonText,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with a Class 2 biometric (e.g. fingerprint, face, or iris).

final @NonNull BiometricPrompt.AuthenticationResult
Class2BiometricOrCredentialAuthExtensionsKt.authenticateWithClass2BiometricsOrCredentials(
    @NonNull FragmentActivity receiver,
    @NonNull CharSequence title,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired
)

Prompts the user to authenticate with a Class 2 biometric (e.g. fingerprint, face, or iris) or the screen lock credential (i.e. PIN, pattern, or password) for the device.

final @NonNull AuthPrompt
Class2BiometricOrCredentialAuthExtensionsKt.startClass2BiometricOrCredentialAuthentication(
    @NonNull FragmentActivity receiver,
    @NonNull CharSequence title,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with a Class 2 biometric (e.g. fingerprint, face, or iris) or the screen lock credential (i.e. PIN, pattern, or password) for the device.

final @NonNull BiometricPrompt.AuthenticationResult
Class3BiometricAuthExtensionsKt.authenticateWithClass3Biometrics(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    @NonNull CharSequence negativeButtonText,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired
)

Prompts the user to authenticate with a Class 3 biometric (e.g. fingerprint, face, or iris).

final @NonNull AuthPrompt
Class3BiometricAuthExtensionsKt.authenticateWithClass3Biometrics(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    @NonNull CharSequence negativeButtonText,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with a Class 3 biometric (e.g. fingerprint, face, or iris).

final @NonNull BiometricPrompt.AuthenticationResult
@RequiresApi(value = 30)
Class3BiometricOrCredentialAuthExtensionsKt.authenticateWithClass3BiometricsOrCredentials(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired
)

Prompts the user to authenticate with a Class 3 biometric (e.g. fingerprint, face, or iris) or the screen lock credential (i.e. PIN, pattern, or password) for the device.

final @NonNull AuthPrompt
@RequiresApi(value = 30)
Class3BiometricOrCredentialAuthExtensionsKt.startClass3BiometricOrCredentialAuthentication(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with a Class 3 biometric (e.g. fingerprint, face, or iris) or the screen lock credential (i.e. PIN, pattern, or password) for the device.

final @NonNull BiometricPrompt.AuthenticationResult

Prompts the user to authenticate with the screen lock credential (i.e. PIN, pattern, or password) for the device.

final @NonNull AuthPrompt
@RequiresApi(value = 30)
CredentialAuthExtensionsKt.startCredentialAuthentication(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    CharSequence description,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with the screen lock credential (i.e. PIN, pattern, or password) for the device.

Inherited Constants

From android.app.Activity
static final int
static final int
static final int
static final int
static final int
static final int[]
static final int
static final int
static final int
static final int
static final int
static final int
static final int
From android.content.ComponentCallbacks2
static final int
static final int
static final int
static final int
static final int
static final int
static final int
From android.content.Context
static final String
ACCESSIBILITY_SERVICE = "accessibility"
static final String
ACCOUNT_SERVICE = "account"
static final String
ACTIVITY_SERVICE = "activity"
static final String
ALARM_SERVICE = "alarm"
static final String
APPWIDGET_SERVICE = "appwidget"
static final String
APP_OPS_SERVICE = "appops"
static final String
APP_SEARCH_SERVICE = "app_search"
static final String
AUDIO_SERVICE = "audio"
static final String
BATTERY_SERVICE = "batterymanager"
static final int
static final int
static final int
static final int
static final int
static final int
static final int
BIND_EXTERNAL_SERVICE = -2147483648
static final long
BIND_EXTERNAL_SERVICE_LONG = 4611686018427387904
static final int
static final int
static final int
static final int
static final int
static final int
static final String
BIOMETRIC_SERVICE = "biometric"
static final String
BLOB_STORE_SERVICE = "blob_store"
static final String
BLUETOOTH_SERVICE = "bluetooth"
static final String
BUGREPORT_SERVICE = "bugreport"
static final String
CAMERA_SERVICE = "camera"
static final String
CAPTIONING_SERVICE = "captioning"
static final String
CARRIER_CONFIG_SERVICE = "carrier_config"
static final String
CLIPBOARD_SERVICE = "clipboard"
static final String
COMPANION_DEVICE_SERVICE = "companiondevice"
static final String
CONNECTIVITY_DIAGNOSTICS_SERVICE = "connectivity_diagnostics"
static final String
CONNECTIVITY_SERVICE = "connectivity"
static final String
CONSUMER_IR_SERVICE = "consumer_ir"
static final int
static final int
static final int
static final String
CREDENTIAL_SERVICE = "credential"
static final String
CROSS_PROFILE_APPS_SERVICE = "crossprofileapps"
static final int
static final int
static final String
DEVICE_LOCK_SERVICE = "device_lock"
static final String
DEVICE_POLICY_SERVICE = "device_policy"
static final String
DISPLAY_HASH_SERVICE = "display_hash"
static final String
DISPLAY_SERVICE = "display"
static final String
DOMAIN_VERIFICATION_SERVICE = "domain_verification"
static final String
DOWNLOAD_SERVICE = "download"
static final String
DROPBOX_SERVICE = "dropbox"
static final String
EUICC_SERVICE = "euicc"
static final String
FILE_INTEGRITY_SERVICE = "file_integrity"
static final String
FINGERPRINT_SERVICE = "fingerprint"
static final String
GAME_SERVICE = "game"
static final String
GRAMMATICAL_INFLECTION_SERVICE = "grammatical_inflection"
static final String
HARDWARE_PROPERTIES_SERVICE = "hardware_properties"
static final String
HEALTHCONNECT_SERVICE = "healthconnect"
static final String
INPUT_METHOD_SERVICE = "input_method"
static final String
INPUT_SERVICE = "input"
static final String
IPSEC_SERVICE = "ipsec"
static final String
JOB_SCHEDULER_SERVICE = "jobscheduler"
static final String
KEYGUARD_SERVICE = "keyguard"
static final String
LAUNCHER_APPS_SERVICE = "launcherapps"
static final String
LAYOUT_INFLATER_SERVICE = "layout_inflater"
static final String
LOCALE_SERVICE = "locale"
static final String
LOCATION_SERVICE = "location"
static final String
MEDIA_COMMUNICATION_SERVICE = "media_communication"
static final String
MEDIA_METRICS_SERVICE = "media_metrics"
static final String
MEDIA_PROJECTION_SERVICE = "media_projection"
static final String
MEDIA_ROUTER_SERVICE = "media_router"
static final String
MEDIA_SESSION_SERVICE = "media_session"
static final String
MIDI_SERVICE = "midi"
static final int
MODE_APPEND = 32768
static final int
static final int

This field is deprecated.

static final int
static final int
static final int

This field is deprecated.

static final int

This field is deprecated.

static final String
static final String
NFC_SERVICE = "nfc"
static final String
NOTIFICATION_SERVICE = "notification"
static final String
NSD_SERVICE = "servicediscovery"
static final String
OVERLAY_SERVICE = "overlay"
static final String
PEOPLE_SERVICE = "people"
static final String
PERFORMANCE_HINT_SERVICE = "performance_hint"
static final String
POWER_SERVICE = "power"
static final String
PRINT_SERVICE = "print"
static final int
static final int
static final int
static final String
RESTRICTIONS_SERVICE = "restrictions"
static final String
ROLE_SERVICE = "role"
static final String
SEARCH_SERVICE = "search"
static final String
SENSOR_SERVICE = "sensor"
static final String
SHORTCUT_SERVICE = "shortcut"
static final String
STATUS_BAR_SERVICE = "statusbar"
static final String
STORAGE_SERVICE = "storage"
static final String
STORAGE_STATS_SERVICE = "storagestats"
static final String
SYSTEM_HEALTH_SERVICE = "systemhealth"
static final String
TELECOM_SERVICE = "telecom"
static final String
TELEPHONY_IMS_SERVICE = "telephony_ims"
static final String
static final String
TELEPHONY_SUBSCRIPTION_SERVICE = "telephony_subscription_service"
static final String
TEXT_CLASSIFICATION_SERVICE = "textclassification"
static final String
static final String
TV_INPUT_SERVICE = "tv_input"
static final String
TV_INTERACTIVE_APP_SERVICE = "tv_interactive_app"
static final String
UI_MODE_SERVICE = "uimode"
static final String
USAGE_STATS_SERVICE = "usagestats"
static final String
USB_SERVICE = "usb"
static final String
USER_SERVICE = "user"
static final String
VIBRATOR_MANAGER_SERVICE = "vibrator_manager"
static final String
VIBRATOR_SERVICE = "vibrator"

This field is deprecated.

static final String
VIRTUAL_DEVICE_SERVICE = "virtualdevice"
static final String
VPN_MANAGEMENT_SERVICE = "vpn_management"
static final String
WALLPAPER_SERVICE = "wallpaper"
static final String
WIFI_AWARE_SERVICE = "wifiaware"
static final String
WIFI_P2P_SERVICE = "wifip2p"
static final String
static final String
WIFI_SERVICE = "wifi"
static final String
WINDOW_SERVICE = "window"

Inherited fields

From androidx.activity.ComponentActivity
final ActivityResultRegistry

Get the ActivityResultRegistry associated with this activity.

Inherited methods

From android.app.Activity
void
void
void
void
void
PendingIntent
createPendingResult(int requestCode, Intent data, int flags)
final void
dismissDialog(int id)

This method is deprecated.

final void
boolean
boolean
boolean
boolean
boolean
boolean
void

This method is deprecated.

boolean
T
<T extends View> findViewById(int id)
void
void
finishActivity(int requestCode)
void
finishActivityFromChild(Activity child, int requestCode)

This method is deprecated.

void
void
void
void

This method is deprecated.

ActionBar
final Application
ComponentName
String
int
ComponentName
Scene
TransitionManager
View
FragmentManager

This method is deprecated.

Intent
Object
String
int
LayoutInflater
LoaderManager

This method is deprecated.

String
int
final MediaController
MenuInflater
OnBackInvokedDispatcher
final Activity
Intent
SharedPreferences
getPreferences(int mode)
Uri
int
final SearchEvent
final SplashScreen
Object
int
final CharSequence
final int
VoiceInteractor
final int
Window
WindowManager
boolean
void
boolean
boolean
final boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
final Cursor
managedQuery(
    Uri uri,
    String[] projection,
    String selection,
    String[] selectionArgs,
    String sortOrder
)

This method is deprecated.

boolean
moveTaskToBack(boolean nonRoot)
boolean
navigateUpTo(Intent upIntent)
boolean

This method is deprecated.

void
void
void
onActivityReenter(int resultCode, Intent data)
void
onActivityResult(int requestCode, int resultCode, Intent data)
void
onApplyThemeResource(Resources.Theme theme, int resid, boolean first)
void

This method is deprecated.

void
void

This method is deprecated.

void
onChildTitleChanged(Activity childActivity, CharSequence title)
void
void
boolean
void
void
onCreate(Bundle savedInstanceState)
void
onCreateContextMenu(
    ContextMenu menu,
    View v,
    ContextMenu.ContextMenuInfo menuInfo
)
CharSequence
Dialog

This method is deprecated.

void
boolean
boolean
onCreatePanelMenu(int featureId, Menu menu)
View
onCreatePanelView(int featureId)
boolean
onCreateThumbnail(Bitmap outBitmap, Canvas canvas)

This method is deprecated.

void
void
boolean
void
onGetDirectActions(
    CancellationSignal cancellationSignal,
    Consumer<List<DirectAction>> callback
)
boolean
onKeyDown(int keyCode, KeyEvent event)
boolean
onKeyLongPress(int keyCode, KeyEvent event)
boolean
onKeyMultiple(int keyCode, int repeatCount, KeyEvent event)
boolean
onKeyShortcut(int keyCode, KeyEvent event)
boolean
onKeyUp(int keyCode, KeyEvent event)
void
void
void
boolean
onMenuItemSelected(int featureId, MenuItem item)
boolean
onMenuOpened(int featureId, Menu menu)
void
onMultiWindowModeChanged(
    boolean isInMultiWindowMode,
    Configuration newConfig
)
boolean
boolean

This method is deprecated.

void
boolean
void
void
onPanelClosed(int featureId, Menu menu)
void
onPerformDirectAction(
    String actionId,
    Bundle arguments,
    CancellationSignal cancellationSignal,
    Consumer<Bundle> resultListener
)
void
onPictureInPictureModeChanged(
    boolean isInPictureInPictureMode,
    Configuration newConfig
)
boolean
void
void
onPostCreate(Bundle savedInstanceState)
void
onPrepareDialog(int id, Dialog dialog)

This method is deprecated.

void
boolean
boolean
onPreparePanel(int featureId, View view, Menu menu)
void
void
void
onProvideKeyboardShortcuts(
    List<KeyboardShortcutGroup> data,
    Menu menu,
    int deviceId
)
Uri
void
onRequestPermissionsResult(
    int requestCode,
    String[] permissions,
    int[] grantResults
)
void
void
onRestoreInstanceState(Bundle savedInstanceState)
Object
void
boolean
void
onTitleChanged(CharSequence title, int color)
void
onTopResumedActivityChanged(boolean isTopResumedActivity)
boolean
boolean
void
onTrimMemory(int level)
void
void
void

This method is deprecated.

void
void
onWindowFocusChanged(boolean hasFocus)
ActionMode
void
void
void
overrideActivityTransition(
    int overrideType,
    int enterAnim,
    int exitAnim
)
void
overridePendingTransition(int enterAnim, int exitAnim)

This method is deprecated.

void
void
void
void
void
void
boolean
final void
removeDialog(int id)

This method is deprecated.

void
DragAndDropPermissions
void
requestFullscreenMode(
    int request,
    OutcomeReceiver<VoidThrowable> approvalCallback
)
final void
requestPermissions(String[] permissions, int requestCode)
final void
boolean
requestVisibleBehind(boolean visible)

This method is deprecated.

final boolean
requestWindowFeature(int featureId)
final T
<T extends View> requireViewById(int id)
final void
void
void
void
setContentView(int layoutResID)
final void
void
void
final void
setFeatureDrawable(int featureId, Drawable drawable)
final void
setFeatureDrawableAlpha(int featureId, int alpha)
final void
setFeatureDrawableResource(int featureId, int resId)
final void
setFeatureDrawableUri(int featureId, Uri uri)
void
setFinishOnTouchOutside(boolean finish)
void
setImmersive(boolean i)
void
setInheritShowWhenLocked(boolean inheritShowWhenLocked)
void
setIntent(Intent newIntent)
void
setLocusContext(LocusId locusId, Bundle bundle)
final void
void
final void
setProgress(int progress)

This method is deprecated.

final void
setProgressBarIndeterminate(boolean indeterminate)

This method is deprecated.

final void

This method is deprecated.

final void
setProgressBarVisibility(boolean visible)

This method is deprecated.

void
setRecentsScreenshotEnabled(boolean enabled)
void
setRequestedOrientation(int requestedOrientation)
final void
setResult(int resultCode)
final void
setSecondaryProgress(int secondaryProgress)

This method is deprecated.

void
setShouldDockBigOverlays(boolean shouldDockBigOverlays)
void
setShowWhenLocked(boolean showWhenLocked)
void
void
setTheme(int resid)
void
void
setTitleColor(int textColor)

This method is deprecated.

boolean
setTranslucent(boolean translucent)
void
setTurnScreenOn(boolean turnScreenOn)
void
setVisible(boolean visible)
final void
setVolumeControlStream(int streamType)
void
setVrModeEnabled(boolean enabled, ComponentName requestedComponent)
boolean
boolean
boolean
boolean
final void
showDialog(int id)

This method is deprecated.

final boolean
showDialog(int id, Bundle args)

This method is deprecated.

void
ActionMode
void
startActivities(Intent[] intents)
void
void
startActivityForResult(Intent intent, int requestCode)
void
startActivityFromChild(Activity child, Intent intent, int requestCode)

This method is deprecated.

void
startActivityFromFragment(
    Fragment fragment,
    Intent intent,
    int requestCode
)

This method is deprecated.

boolean
startActivityIfNeeded(Intent intent, int requestCode)
void
startIntentSender(
    IntentSender intent,
    Intent fillInIntent,
    int flagsMask,
    int flagsValues,
    int extraFlags
)
void
startIntentSenderForResult(
    IntentSender intent,
    int requestCode,
    Intent fillInIntent,
    int flagsMask,
    int flagsValues,
    int extraFlags
)
void
startIntentSenderFromChild(
    Activity child,
    IntentSender intent,
    int requestCode,
    Intent fillInIntent,
    int flagsMask,
    int flagsValues,
    int extraFlags
)

This method is deprecated.

void
void
void

This method is deprecated.

boolean
void
void
startSearch(
    String initialQuery,
    boolean selectInitialQuery,
    Bundle appSearchData,
    boolean globalSearch
)
void
void
void

This method is deprecated.

void
takeKeyEvents(boolean get)
void
triggerSearch(String query, Bundle appSearchData)
void
void
void
void
From androidx.activity.ComponentActivity
void
void

Adds the given MenuProvider to this MenuHost.

final void

Add a new listener that will get a callback associated with ComponentCallbacks.onConfigurationChanged with the new Configuration.

final void

{@inheritDoc}

final void

Add a new listener that will get a callback associated with Activity.onMultiWindowModeChanged with the new MultiWindowModeChangedInfo.

final void

Add a new listener that will get a callback associated with Activity.onNewIntent with the new Intent.

final void

Add a new listener that will get a callback associated with Activity.onPictureInPictureModeChanged with the new PictureInPictureModeChangedInfo.

final void

Add a new listener that will get a callback associated with ComponentCallbacks2.onTrimMemory with the int representing the level of trimming.

final void

Add a new listener that will get a callback associated with Activity.onUserLeaveHint

final ActivityResultRegistry

Get the ActivityResultRegistry associated with this activity.

CreationExtras

Returns the default CreationExtras that should be passed into ViewModelProvider.Factory.create when no overriding CreationExtras were passed to the ViewModelProvider constructors.

ViewModelProvider.Factory

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

FullyDrawnReporter

Retrieve the FullyDrawnReporter that should handle the independent parts of the UI that separately report that they are fully drawn.

Object
Lifecycle

{@inheritDoc}

final OnBackPressedDispatcher

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

final SavedStateRegistry

The SavedStateRegistry owned by this SavedStateRegistryOwner

ViewModelStore

The owned ViewModelStore

void

Sets the view tree owners before setting the content view so that the inflation process and attach listeners will see them already present.

void

Invalidates the android.view.Menu to ensure that what is displayed matches the current internal state of the menu.

void

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

void

{@inheritDoc}

boolean
onCreatePanelMenu(int featureId, Menu menu)
void
onMultiWindowModeChanged(boolean isInMultiWindowMode)

{@inheritDoc}

void

{@inheritDoc}

void
onPanelClosed(int featureId, Menu menu)
void
onPictureInPictureModeChanged(boolean isInPictureInPictureMode)

{@inheritDoc}

boolean
onPreparePanel(int featureId, View view, Menu menu)
Object

Use this instead of onRetainNonConfigurationInstance.

final Object

Retain all appropriate non-config state.

void
void
onTrimMemory(int level)

{@inheritDoc}

void

{@inheritDoc}

Context

Get the Context if it is currently available.

final ActivityResultLauncher<I>
<I, O> registerForActivityResult(
    ActivityResultContract<I, O> contract,
    ActivityResultRegistry registry,
    ActivityResultCallback<O> callback
)

Register a request to start an activity for result, designated by the given contract.

void

Removes the given MenuProvider from this MenuHost.

final void

Remove a previously added listener.

final void

Remove a OnContextAvailableListener previously added via addOnContextAvailableListener.

final void

Remove a previously added listener.

final void

Remove a previously added listener.

final void

Remove a previously added listener.

final void

Remove a previously added listener.

final void

Remove a previously added listener.

void
void
setContentView(int layoutResID)
void
startActivityForResult(Intent intent, int requestCode)

{@inheritDoc}

void
startIntentSenderForResult(
    IntentSender intent,
    int requestCode,
    Intent fillInIntent,
    int flagsMask,
    int flagsValues,
    int extraFlags
)

{@inheritDoc}

From android.content.Context
final int
getColor(int id)
final ColorStateList
final Drawable
getDrawable(int id)
final String
getString(int resId)
final T
<T> getSystemService(Class<T> serviceClass)
final CharSequence
getText(int resId)
final TypedArray
void
void
sendBroadcastWithMultiplePermissions(
    Intent intent,
    String[] receiverPermissions
)
From android.view.ContextThemeWrapper
From android.content.ContextWrapper
boolean
bindIsolatedService(
    Intent service,
    int flags,
    String instanceName,
    Executor executor,
    ServiceConnection conn
)
boolean
bindService(Intent service, ServiceConnection conn, int flags)
boolean
bindServiceAsUser(
    Intent service,
    ServiceConnection conn,
    int flags,
    UserHandle user
)
int
int
checkCallingOrSelfUriPermission(Uri uri, int modeFlags)
int[]
checkCallingOrSelfUriPermissions(List<Uri> uris, int modeFlags)
int
int
checkCallingUriPermission(Uri uri, int modeFlags)
int[]
checkCallingUriPermissions(List<Uri> uris, int modeFlags)
int
checkPermission(String permission, int pid, int uid)
int
int
checkUriPermission(Uri uri, int pid, int uid, int modeFlags)
int[]
checkUriPermissions(List<Uri> uris, int pid, int uid, int modeFlags)
void

This method is deprecated.

Context
Context
Context
Context
Context
createDeviceContext(int deviceId)
Context
Context
Context
createPackageContext(String packageName, int flags)
Context
createWindowContext(int type, Bundle options)
String[]
boolean
boolean
boolean
void
void
enforceCallingOrSelfUriPermission(
    Uri uri,
    int modeFlags,
    String message
)
void
enforceCallingPermission(String permission, String message)
void
enforceCallingUriPermission(Uri uri, int modeFlags, String message)
void
enforcePermission(String permission, int pid, int uid, String message)
void
enforceUriPermission(
    Uri uri,
    int pid,
    int uid,
    int modeFlags,
    String message
)
String[]
Context
ApplicationInfo
AttributionSource
String
Context
File
ClassLoader
File
ContentResolver
File
File
int
File
getDir(String name, int mode)
Display
File
File[]
File
File[]
File[]

This method is deprecated.

File
File
Executor
Looper
File
File
File[]
String
String
PackageManager
String
String
ContextParams
SharedPreferences
getSharedPreferences(String name, int mode)
String
Drawable

This method is deprecated.

int

This method is deprecated.

int

This method is deprecated.

void
grantUriPermission(String toPackage, Uri uri, int modeFlags)
boolean
boolean
boolean
boolean
moveDatabaseFrom(Context sourceContext, String name)
boolean
moveSharedPreferencesFrom(Context sourceContext, String name)
FileInputStream
FileOutputStream
openFileOutput(String name, int mode)
SQLiteDatabase
openOrCreateDatabase(
    String name,
    int mode,
    SQLiteDatabase.CursorFactory factory
)
Drawable

This method is deprecated.

void
Intent
void

This method is deprecated.

void

This method is deprecated.

void
void
revokeUriPermission(Uri uri, int modeFlags)
void
void
void
sendOrderedBroadcast(Intent intent, String receiverPermission)
void
sendOrderedBroadcastAsUser(
    Intent intent,
    UserHandle user,
    String receiverPermission,
    BroadcastReceiver resultReceiver,
    Handler scheduler,
    int initialCode,
    String initialData,
    Bundle initialExtras
)
void

This method is deprecated.

void

This method is deprecated.

void
sendStickyOrderedBroadcast(
    Intent intent,
    BroadcastReceiver resultReceiver,
    Handler scheduler,
    int initialCode,
    String initialData,
    Bundle initialExtras
)

This method is deprecated.

void
sendStickyOrderedBroadcastAsUser(
    Intent intent,
    UserHandle user,
    BroadcastReceiver resultReceiver,
    Handler scheduler,
    int initialCode,
    String initialData,
    Bundle initialExtras
)

This method is deprecated.

void

This method is deprecated.

ComponentName
boolean
startInstrumentation(
    ComponentName className,
    String profileFile,
    Bundle arguments
)
ComponentName
boolean
void
void
void
void
updateServiceGroup(ServiceConnection conn, int group, int importance)
From androidx.core.view.MenuHost
abstract void

Adds the given MenuProvider to this MenuHost.

abstract void
addMenuProvider(
    @NonNull MenuProvider provider,
    @NonNull LifecycleOwner owner
)

Adds the given MenuProvider to this MenuHost.

abstract void
addMenuProvider(
    @NonNull MenuProvider provider,
    @NonNull LifecycleOwner owner,
    @NonNull Lifecycle.State state
)

Adds the given MenuProvider to this MenuHost once the given LifecycleOwner reaches the given Lifecycle.State.

abstract void

Invalidates the android.view.Menu to ensure that what is displayed matches the current internal state of the menu.

abstract void

Removes the given MenuProvider from this MenuHost.

From android.view.Window.Callback
void
onPointerCaptureChanged(boolean hasCapture)

Public constructors

FragmentActivity

Added in 1.1.0
public FragmentActivity()

Default constructor for FragmentActivity. All Activities must have a default constructor for API 27 and lower devices or when using the default android.app.AppComponentFactory.

FragmentActivity

Added in 1.1.0
@ContentView
public FragmentActivity(@LayoutRes int contentLayoutId)

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

This should generally be called from your constructor that takes no parameters, as is required for API 27 and lower or when using the default android.app.AppComponentFactory.

See also
FragmentActivity

Public methods

dispatchKeyEvent

public boolean dispatchKeyEvent(KeyEvent event)

dispatchKeyShortcutEvent

public boolean dispatchKeyShortcutEvent(KeyEvent event)

dump

public void dump(
    @NonNull String prefix,
    @Nullable FileDescriptor fd,
    @NonNull PrintWriter writer,
    @Nullable String[] args
)

Print the Activity's state into the given stream. This gets invoked if you run "adb shell dumpsys activity ".

Parameters
@NonNull String prefix

Desired prefix to prepend at each line of output.

@Nullable FileDescriptor fd

The raw file descriptor that the dump is being sent to.

@NonNull PrintWriter writer

The PrintWriter to which you should dump your state. This will be closed for you after you return.

@Nullable String[] args

additional arguments to the dump request.

getExtraData

public T <T extends ComponentActivity.ExtraData> getExtraData(Class<T> extraDataClass)

Retrieves a previously set ExtraData by class name.

See also
putExtraData

getSupportFragmentManager

Added in 1.1.0
public @NonNull FragmentManager getSupportFragmentManager()

Return the FragmentManager for interacting with fragments associated with this activity.

getSupportLoaderManager

Added in 1.1.0
Deprecated in 1.1.0
public @NonNull LoaderManager getSupportLoaderManager()

onAttachFragment

Added in 1.1.0
Deprecated in 1.3.0
@MainThread
public void onAttachFragment(@NonNull Fragment fragment)

Called when a fragment is attached to the activity.

This is called after the attached fragment's onAttach and before the attached fragment's onCreate if the fragment has not yet had a previous call to onCreate.

onCreateView

public @Nullable View onCreateView(
    @NonNull String name,
    @NonNull Context context,
    @NonNull AttributeSet attrs
)

onCreateView

public @Nullable View onCreateView(
    @Nullable View parent,
    @NonNull String name,
    @NonNull Context context,
    @NonNull AttributeSet attrs
)

onMenuItemSelected

public boolean onMenuItemSelected(int featureId, @NonNull MenuItem item)

onRequestPermissionsResult

@CallSuper
public void onRequestPermissionsResult(
    int requestCode,
    @NonNull String[] permissions,
    @NonNull int[] grantResults
)

{@inheritDoc}

onStateNotSaved

Added in 1.1.0
public void onStateNotSaved()

Hook in to note that fragment state is no longer saved.

putExtraData

public void putExtraData(ComponentActivity.ExtraData extraData)

Store an instance of ExtraData for later retrieval by class name via getExtraData.

Note that these objects are not retained across configuration changes

See also
getExtraData

setEnterSharedElementCallback

Added in 1.1.0
public void setEnterSharedElementCallback(@Nullable SharedElementCallback callback)

When makeSceneTransitionAnimation was used to start an Activity, callback will be called to handle shared elements on the launched Activity. This requires FEATURE_CONTENT_TRANSITIONS.

Parameters
@Nullable SharedElementCallback callback

Used to manipulate shared element transitions on the launched Activity.

setExitSharedElementCallback

Added in 1.1.0
public void setExitSharedElementCallback(@Nullable SharedElementCallback listener)

When makeSceneTransitionAnimation was used to start an Activity, listener will be called to handle shared elements on the launching Activity. Most calls will only come when returning from the started Activity. This requires FEATURE_CONTENT_TRANSITIONS.

Parameters
@Nullable SharedElementCallback listener

Used to manipulate shared element transitions on the launching Activity.

startActivityFromFragment

Added in 1.1.0
public void startActivityFromFragment(
    @NonNull Fragment fragment,
    @NonNull Intent intent,
    int requestCode
)

Called by Fragment.startActivityForResult() to implement its behavior.

Parameters
@NonNull Fragment fragment

the Fragment to start the activity from.

@NonNull Intent intent

The intent to start.

int requestCode

The request code to be returned in onActivityResult when the activity exits. Must be between 0 and 65535 to be considered valid. If given requestCode is greater than 65535, an IllegalArgumentException would be thrown.

startActivityFromFragment

Added in 1.1.0
public void startActivityFromFragment(
    @NonNull Fragment fragment,
    @NonNull Intent intent,
    int requestCode,
    @Nullable Bundle options
)

Called by Fragment.startActivityForResult() to implement its behavior.

Parameters
@NonNull Fragment fragment

the Fragment to start the activity from.

@NonNull Intent intent

The intent to start.

int requestCode

The request code to be returned in onActivityResult when the activity exits. Must be between 0 and 65535 to be considered valid. If given requestCode is greater than 65535, an IllegalArgumentException would be thrown.

@Nullable Bundle options

Additional options for how the Activity should be started. See startActivity for more details. This value may be null.

startIntentSenderFromFragment

Added in 1.1.0
Deprecated in 1.3.0
public void startIntentSenderFromFragment(
    @NonNull Fragment fragment,
    @NonNull IntentSender intent,
    int requestCode,
    @Nullable Intent fillInIntent,
    int flagsMask,
    int flagsValues,
    int extraFlags,
    @Nullable Bundle options
)

Called by Fragment.startIntentSenderForResult() to implement its behavior.

Parameters
@NonNull Fragment fragment

the Fragment to start the intent sender from.

@NonNull IntentSender intent

The IntentSender to launch.

int requestCode

The request code to be returned in onActivityResult when the activity exits. Must be between 0 and 65535 to be considered valid. If given requestCode is greater than 65535, an IllegalArgumentException would be thrown.

@Nullable Intent fillInIntent

If non-null, this will be provided as the intent parameter to sendIntent. This value may be null.

int flagsMask

Intent flags in the original IntentSender that you would like to change.

int flagsValues

Desired values for any bits set in flagsMask.

int extraFlags

Always set to 0.

@Nullable Bundle options

Additional options for how the Activity should be started. See startActivity for more details. This value may be null.

Throws
android.content.IntentSender.SendIntentException

if the call fails to execute.

superDispatchKeyEvent

public boolean superDispatchKeyEvent(KeyEvent event)
Parameters
KeyEvent event

superDispatchKeyEvent

public abstract boolean superDispatchKeyEvent(@NonNull KeyEvent event)

Expected to call into the super implementation of dispatchKeyEvent. If you're not implementing Window.Callback, this should contain dispatch logic that occurs afterandroid.view.View.OnUnhandledKeyEventListeners.

Parameters
@NonNull KeyEvent event

The event being dispatched

Returns
boolean

true if consuming the event, false otherwise

supportFinishAfterTransition

Added in 1.1.0
public void supportFinishAfterTransition()

Reverses the Activity Scene entry Transition and triggers the calling Activity to reverse its exit Transition. When the exit Transition completes, finish is called. If no entry Transition was used, finish() is called immediately and the Activity exit Transition is run.

On Android 4.4 or lower, this method only finishes the Activity with no special exit transition.

supportInvalidateOptionsMenu

Added in 1.1.0
Deprecated in 1.1.0
public void supportInvalidateOptionsMenu()

Support library version of invalidateOptionsMenu.

Invalidate the activity's options menu. This will cause relevant presentations of the menu to fully update via calls to onCreateOptionsMenu and onPrepareOptionsMenu the next time the menu is requested.

supportPostponeEnterTransition

Added in 1.1.0
public void supportPostponeEnterTransition()

Support library version of postponeEnterTransition that works only on API 21 and later.

supportStartPostponedEnterTransition

Added in 1.1.0
public void supportStartPostponedEnterTransition()

Support library version of startPostponedEnterTransition that only works with API 21 and later.

validateRequestPermissionsRequestCode

Added in 1.1.0
Deprecated in 1.3.0
public final void validateRequestPermissionsRequestCode(int requestCode)

Protected methods

onActivityResult

@CallSuper
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data)

{@inheritDoc}

onCreate

protected void onCreate(@Nullable Bundle savedInstanceState)

{@inheritDoc}

If your ComponentActivity is annotated with ContentView, this will call setContentView for you.

Perform initialization of all fragments.

onDestroy

protected void onDestroy()

Destroy all fragments.

onPause

protected void onPause()

Dispatch onPause() to fragments.

onPostResume

protected void onPostResume()

Dispatch onResume() to fragments.

onResume

protected void onResume()

Dispatch onResume() to fragments. Note that for better inter-operation with older versions of the platform, at the point of this call the fragments attached to the activity are not resumed.

onResumeFragments

Added in 1.1.0
protected void onResumeFragments()

This is the fragment-orientated version of onResume that you can override to perform operations in the Activity at the same point where its fragments are resumed. Be sure to always call through to the super-class.

onStart

protected void onStart()

Dispatch onStart() to all fragments.

onStop

protected void onStop()

Dispatch onStop() to all fragments.

shouldDumpInternalState

protected final boolean shouldDumpInternalState(String[] args)

Checks if the internal state should be dump, as some special args are handled by Activity itself.

Subclasses implementing Activity.dump should typically start with:

override fun dump(
prefix: String,
fd: FileDescriptor?,
writer: PrintWriter,
args: Array<out String>?
) {
super.dump(prefix, fd, writer, args)

if (!shouldDumpInternalState(args)) {
return
}
// dump internal state
}

Extension functions

Class2BiometricAuthExtensionsKt.authenticateWithClass2Biometrics

public final @NonNull BiometricPrompt.AuthenticationResult Class2BiometricAuthExtensionsKt.authenticateWithClass2Biometrics(
    @NonNull FragmentActivity receiver,
    @NonNull CharSequence title,
    @NonNull CharSequence negativeButtonText,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired
)

Prompts the user to authenticate with a Class 2 biometric (e.g. fingerprint, face, or iris).

Note that Class 3 biometrics are guaranteed to meet the requirements for Class 2 and thus will also be accepted.

Parameters
@NonNull CharSequence title

The title to be displayed on the prompt.

@NonNull CharSequence negativeButtonText

The label for the negative button on the prompt.

CharSequence subtitle

An optional subtitle to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

boolean confirmationRequired

Whether user confirmation should be required for passive biometrics.

Returns
@NonNull BiometricPrompt.AuthenticationResult

AuthenticationResult for a successful authentication.

Throws
androidx.biometric.auth.AuthPromptErrorException

when an unrecoverable error has been encountered and authentication has stopped.

androidx.biometric.auth.AuthPromptFailureException

when an authentication attempt by the user has been rejected.

Class2BiometricAuthExtensionsKt.startClass2BiometricAuthentication

public final @NonNull AuthPrompt Class2BiometricAuthExtensionsKt.startClass2BiometricAuthentication(
    @NonNull FragmentActivity receiver,
    @NonNull CharSequence title,
    @NonNull CharSequence negativeButtonText,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with a Class 2 biometric (e.g. fingerprint, face, or iris).

Note that Class 3 biometrics are guaranteed to meet the requirements for Class 2 and thus will also be accepted.

Parameters
@NonNull CharSequence title

The title to be displayed on the prompt.

@NonNull CharSequence negativeButtonText

The label for the negative button on the prompt.

CharSequence subtitle

An optional subtitle to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

boolean confirmationRequired

Whether user confirmation should be required for passive biometrics.

Executor executor

An executor for callback methods. If null, these will run on the main thread.

@NonNull AuthPromptCallback callback

The object that will receive and process authentication events.

Returns
@NonNull AuthPrompt

An AuthPrompt handle to the shown prompt.

Class2BiometricOrCredentialAuthExtensionsKt.authenticateWithClass2BiometricsOrCredentials

public final @NonNull BiometricPrompt.AuthenticationResult Class2BiometricOrCredentialAuthExtensionsKt.authenticateWithClass2BiometricsOrCredentials(
    @NonNull FragmentActivity receiver,
    @NonNull CharSequence title,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired
)

Prompts the user to authenticate with a Class 2 biometric (e.g. fingerprint, face, or iris) or the screen lock credential (i.e. PIN, pattern, or password) for the device.

Note that Class 3 biometrics are guaranteed to meet the requirements for Class 2 and thus will also be accepted.

Parameters
@NonNull CharSequence title

The title to be displayed on the prompt.

CharSequence subtitle

An optional subtitle to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

boolean confirmationRequired

Whether user confirmation should be required for passive biometrics.

Returns
@NonNull BiometricPrompt.AuthenticationResult

AuthenticationResult for a successful authentication.

Throws
androidx.biometric.auth.AuthPromptErrorException

when an unrecoverable error has been encountered and authentication has stopped.

androidx.biometric.auth.AuthPromptFailureException

when an authentication attempt by the user has been rejected.

Class2BiometricOrCredentialAuthExtensionsKt.startClass2BiometricOrCredentialAuthentication

public final @NonNull AuthPrompt Class2BiometricOrCredentialAuthExtensionsKt.startClass2BiometricOrCredentialAuthentication(
    @NonNull FragmentActivity receiver,
    @NonNull CharSequence title,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with a Class 2 biometric (e.g. fingerprint, face, or iris) or the screen lock credential (i.e. PIN, pattern, or password) for the device.

Note that Class 3 biometrics are guaranteed to meet the requirements for Class 2 and thus will also be accepted.

Parameters
@NonNull CharSequence title

The title to be displayed on the prompt.

CharSequence subtitle

An optional subtitle to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

boolean confirmationRequired

Whether user confirmation should be required for passive biometrics.

Executor executor

An executor for callback methods. If null, these will run on the main thread.

@NonNull AuthPromptCallback callback

The object that will receive and process authentication events.

Returns
@NonNull AuthPrompt

An AuthPrompt handle to the shown prompt.

Class3BiometricAuthExtensionsKt.authenticateWithClass3Biometrics

public final @NonNull BiometricPrompt.AuthenticationResult Class3BiometricAuthExtensionsKt.authenticateWithClass3Biometrics(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    @NonNull CharSequence negativeButtonText,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired
)

Prompts the user to authenticate with a Class 3 biometric (e.g. fingerprint, face, or iris).

Parameters
BiometricPrompt.CryptoObject crypto

A cryptographic object to be associated with this authentication.

@NonNull CharSequence title

The title to be displayed on the prompt.

@NonNull CharSequence negativeButtonText

The label for the negative button on the prompt.

CharSequence subtitle

An optional subtitle to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

boolean confirmationRequired

Whether user confirmation should be required for passive biometrics.

Returns
@NonNull BiometricPrompt.AuthenticationResult

AuthenticationResult for a successful authentication.

Throws
androidx.biometric.auth.AuthPromptErrorException

when an unrecoverable error has been encountered and authentication has stopped.

androidx.biometric.auth.AuthPromptFailureException

when an authentication attempt by the user has been rejected.

Class3BiometricAuthExtensionsKt.authenticateWithClass3Biometrics

public final @NonNull AuthPrompt Class3BiometricAuthExtensionsKt.authenticateWithClass3Biometrics(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    @NonNull CharSequence negativeButtonText,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with a Class 3 biometric (e.g. fingerprint, face, or iris).

Parameters
BiometricPrompt.CryptoObject crypto

A cryptographic object to be associated with this authentication.

@NonNull CharSequence title

The title to be displayed on the prompt.

@NonNull CharSequence negativeButtonText

The label for the negative button on the prompt.

CharSequence subtitle

An optional subtitle to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

boolean confirmationRequired

Whether user confirmation should be required for passive biometrics.

Executor executor

An executor for callback methods. If null, these will run on the main thread.

@NonNull AuthPromptCallback callback

The object that will receive and process authentication events.

Returns
@NonNull AuthPrompt

An AuthPrompt handle to the shown prompt.

Class3BiometricOrCredentialAuthExtensionsKt.authenticateWithClass3BiometricsOrCredentials

@RequiresApi(value = 30)
public final @NonNull BiometricPrompt.AuthenticationResult Class3BiometricOrCredentialAuthExtensionsKt.authenticateWithClass3BiometricsOrCredentials(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired
)

Prompts the user to authenticate with a Class 3 biometric (e.g. fingerprint, face, or iris) or the screen lock credential (i.e. PIN, pattern, or password) for the device.

Parameters
BiometricPrompt.CryptoObject crypto

A cryptographic object to be associated with this authentication.

@NonNull CharSequence title

The title to be displayed on the prompt.

CharSequence subtitle

An optional subtitle to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

boolean confirmationRequired

Whether user confirmation should be required for passive biometrics.

Returns
@NonNull BiometricPrompt.AuthenticationResult

AuthenticationResult for a successful authentication.

Throws
androidx.biometric.auth.AuthPromptErrorException

when an unrecoverable error has been encountered and authentication has stopped.

androidx.biometric.auth.AuthPromptFailureException

when an authentication attempt by the user has been rejected.

Class3BiometricOrCredentialAuthExtensionsKt.startClass3BiometricOrCredentialAuthentication

@RequiresApi(value = 30)
public final @NonNull AuthPrompt Class3BiometricOrCredentialAuthExtensionsKt.startClass3BiometricOrCredentialAuthentication(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    CharSequence subtitle,
    CharSequence description,
    boolean confirmationRequired,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with a Class 3 biometric (e.g. fingerprint, face, or iris) or the screen lock credential (i.e. PIN, pattern, or password) for the device.

Parameters
BiometricPrompt.CryptoObject crypto

A cryptographic object to be associated with this authentication.

@NonNull CharSequence title

The title to be displayed on the prompt.

CharSequence subtitle

An optional subtitle to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

boolean confirmationRequired

Whether user confirmation should be required for passive biometrics.

Executor executor

An executor for callback methods. If null, these will run on the main thread.

@NonNull AuthPromptCallback callback

The object that will receive and process authentication events.

Returns
@NonNull AuthPrompt

An AuthPrompt handle to the shown prompt.

CredentialAuthExtensionsKt.authenticateWithCredentials

@RequiresApi(value = 30)
public final @NonNull BiometricPrompt.AuthenticationResult CredentialAuthExtensionsKt.authenticateWithCredentials(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    CharSequence description
)

Prompts the user to authenticate with the screen lock credential (i.e. PIN, pattern, or password) for the device.

Parameters
BiometricPrompt.CryptoObject crypto

A cryptographic object to be associated with this authentication.

@NonNull CharSequence title

The title to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

Returns
@NonNull BiometricPrompt.AuthenticationResult

AuthenticationResult for a successful authentication.

Throws
androidx.biometric.auth.AuthPromptErrorException

when an unrecoverable error has been encountered and authentication has stopped.

androidx.biometric.auth.AuthPromptFailureException

when an authentication attempt by the user has been rejected.

CredentialAuthExtensionsKt.startCredentialAuthentication

@RequiresApi(value = 30)
public final @NonNull AuthPrompt CredentialAuthExtensionsKt.startCredentialAuthentication(
    @NonNull FragmentActivity receiver,
    BiometricPrompt.CryptoObject crypto,
    @NonNull CharSequence title,
    CharSequence description,
    Executor executor,
    @NonNull AuthPromptCallback callback
)

Prompts the user to authenticate with the screen lock credential (i.e. PIN, pattern, or password) for the device.

Parameters
BiometricPrompt.CryptoObject crypto

A cryptographic object to be associated with this authentication.

@NonNull CharSequence title

The title to be displayed on the prompt.

CharSequence description

An optional description to be displayed on the prompt.

Executor executor

An executor for callback methods. If null, these will run on the main thread.

@NonNull AuthPromptCallback callback

The object that will receive and process authentication events.

Returns
@NonNull AuthPrompt

An AuthPrompt handle to the shown prompt.