ActivityResultContracts.OpenDocument

public class ActivityResultContracts.OpenDocument extends ActivityResultContract


An ActivityResultContract to prompt the user to open a document, receiving its contents as a {@code file:/http:/content:}Uri.

The input is the mime types to filter by, e.g. {@code image/*}.

This can be extended to override createIntent if you wish to pass additional extras to the Intent created by {@code super.createIntent()}.

Summary

Public methods

@CallSuper @NonNull @Override Intent

Create an intent that can be used for startActivityForResult

final @Nullable @Override ActivityResultContract.SynchronousResult<@NonNull Uri>
getSynchronousResult(
    @NonNull Context context,
    @NonNull Array<@NonNull String> input
)

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

final @Nullable @Override Uri
parseResult(@NonNull int resultCode, @Nullable Intent intent)

Convert result obtained from onActivityResult to O

Public methods

createIntent

@CallSuper
@NonNull
@Override
public @CallSuper @Override Intent createIntent(@NonNull Context context, @NonNull Array<@NonNull String> input)

Create an intent that can be used for startActivityForResult

getSynchronousResult

@Nullable
@Override
@NonNull
public final @Override ActivityResultContract.SynchronousResult<@NonNull UrigetSynchronousResult(
    @NonNull Context context,
    @NonNull Array<@NonNull String> input
)

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

Returns
@Override ActivityResultContract.SynchronousResult<@NonNull Uri>

the result wrapped in a SynchronousResult or {@code null} if the call should proceed to start an activity.

parseResult

@Nullable
@Override
@NonNull
public final @Override Uri parseResult(@NonNull int resultCode, @Nullable Intent intent)

Convert result obtained from onActivityResult to O