ActivityResultContracts.StartActivityForResult

public final class ActivityResultContracts.StartActivityForResult extends ActivityResultContract


An ActivityResultContract that doesn't do any type conversion, taking raw Intent as an input and ActivityResult as an output.

Can be used with androidx.activity.result.ActivityResultCaller.registerForActivityResult to avoid having to manage request codes when calling an activity API for which a type-safe contract is not available.

Summary

Public constructors

Public methods

@NonNull Intent

Create an intent that can be used for android.app.Activity.startActivityForResult.

@NonNull ActivityResult
parseResult(int resultCode, Intent intent)

Convert result obtained from android.app.Activity.onActivityResult to O.

Inherited methods

From androidx.activity.result.contract.ActivityResultContract
ActivityResultContract.SynchronousResult<@NonNull ActivityResult>

An optional method you can implement that can be used to potentially provide a result in lieu of starting an activity.

Public constructors

StartActivityForResult

Added in 1.2.0
public StartActivityForResult()

Public methods

createIntent

Added in 1.2.0
public @NonNull Intent createIntent(@NonNull Context context, @NonNull Intent input)

Create an intent that can be used for android.app.Activity.startActivityForResult.

parseResult

Added in 1.9.0-alpha03
public @NonNull ActivityResult parseResult(int resultCode, Intent intent)

Convert result obtained from android.app.Activity.onActivityResult to O.