ActivityResultContracts.StartActivityForResult


public final class ActivityResultContracts.StartActivityForResult extends ActivityResultContract<@NonNull Intent, @NonNull ActivityResult>


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

public @NonNull ActivityResult parseResult(int resultCode, Intent intent)

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