Language

ActivityFlags 列挙型

定義

複数の型によって返され、複数の型のパラメーターとして取得される値を列挙します。

この列挙体は、メンバー値のビットごとの組み合わせをサポートしています。

[System.Flags]
public enum ActivityFlags
[<System.Flags>]
type ActivityFlags = 
継承
ActivityFlags
属性

フィールド

名前 値 説明
GrantReadUriPermission 1

設定した場合、この意図の受信者には、意図のデータ内の URI とその ClipData で指定された URI に対して読み取り操作を実行するアクセス許可が付与されます。

GrantWriteUriPermission 2

設定した場合、この意図の受信者には、意図のデータ内の URI とその ClipData で指定された URI に対して書き込み操作を実行するアクセス許可が付与されます。

FromBackground 4

呼び出し元は、この意図が直接のユーザー操作ではなく、バックグラウンド操作に由来することを示すように設定できます。

DebugLogResolution 8

デバッグに有効にできるフラグ: 設定すると、この意図の解決中にログ メッセージが出力され、最終的に解決された一覧を作成するために見つかった内容が表示されます。

ExcludeStoppedPackages 16

設定した場合、この意図は、現在停止しているパッケージ内のコンポーネントと一致しません。

IncludeStoppedPackages 32

設定した場合、この意図は、現在停止しているパッケージ内のコンポーネントと常に一致します。

GrantPersistableUriPermission 64

FLAG_GRANT_READ_URI_PERMISSIONやFLAG_GRANT_WRITE_URI_PERMISSIONと組み合わせると、Context.revokeUriPermission(Uri,int) で明示的に取り消されるまで、デバイスの再起動間で URI アクセス許可の付与を保持できます。 このフラグは、可能な永続化の許可のみを提供します。受信側のアプリケーションは、ContentResolver.takePersistableUriPermission(Uri,int) を呼び出して実際に永続化する必要があります。

GrantPrefixUriPermission 128

FLAG_GRANT_READ_URI_PERMISSIONやFLAG_GRANT_WRITE_URI_PERMISSIONと組み合わせると、URI アクセス許可の付与は、プレフィックスが元の付与された URI と一致するすべての URI に適用されます。 (このフラグを指定しない場合、アクセスを許可するには URI が正確に一致する必要があります)。別の URI は、スキーム、権限、およびプレフィックスによって定義されたすべてのパス セグメントが完全に一致する場合にのみ、プレフィックス一致と見なされます。

DirectBootAuto 256

ダイレクト ブートの認識と現在のユーザーの状態に基づいて意図を自動的に照合するために使用されるフラグ。 既定の動作では現在のユーザー状態が自動的に適用されるため、これは実質的に、クエリの有無に基づいてクエリの出力を変更しないセンチネル値です。 代わりに、この値を StrictMode.VmPolicy.Builder.detectImplicitDirectBoot() と組み合わせて、呼び出し元が暗黙的な自動照合に依存していることを検出し、必要な明示的な動作を確認する代わりに役立ちます。 定数値: 256 (0x00000100)

RequireDefault 512

Context.startActivity() に渡される意図に設定されている場合、このフラグは意図が 1 つの結果に解決された場合にのみ起動します。 このような結果が存在しない場合、またはシステム選択子が表示される場合は、ActivityNotFoundException がスローされます。

RequireNonBrowser 1024

Context.startActivity() に渡される意図で設定した場合、このフラグはブラウザーではない結果に解決された場合にのみ意図を起動します。 このような結果が存在しない場合は、ActivityNotFoundException がスローされます。

MatchExternal 2048

Context.startActivity() に渡されるインテントで設定すると、デバイス上の完全なアプリが既に意図を処理できない場合、このフラグはインスタント アプリの起動を試みます。 インスタント アプリを外部で解決しようとすると、Intent.setAction(String) Intent.addCategory(String) Intent.setData(Uri) Intent.setType(String) Intent.setPackage(String) Intent.addFlags(int) インスタント アプリが見つからない場合は、インストーラーが起動され、意図が解決できなかったことをユーザーに通知します。 インスタント アプリをサポートしていないデバイスでは、フラグは無視されます。 定数値: 2048 (0x00000800)

LaunchAdjacent 4096

このフラグは、分割画面マルチウィンドウ モードでのみ使用されます。 可能であれば、新しいアクティビティが起動したアクティビティの横に表示されます。 これは、FLAG_ACTIVITY_NEW_TASKと組み合わせてのみ使用できます。 また、既存のアクティビティの新しいインスタンスを作成する場合は、FLAG_ACTIVITY_MULTIPLE_TASKの設定が必要です。

RetainInRecents 8192

既定では、FLAG_ACTIVITY_NEW_DOCUMENTによって作成されたドキュメントは、ユーザーが閉じると、最近のタスクのエントリが削除されます (back またはそれ以外の場合は finish())。 ドキュメントを再び起動できるように、代わりにドキュメントを最新の状態に維持できるようにする場合は、このフラグを使用できます。 タスクのアクティビティが設定され、タスクのアクティビティが完了すると、ユーザーが再び起動するためのインターフェイス (トップレベル アプリケーションの最近のエントリなど) に最近のエントリが残ります。 受信アクティビティは、R.attr.autoRemoveFromRecents または Activity.finishAndRemoveTask() を明示的に呼び出すことによって、この要求をオーバーライドできます。

TaskOnHome 16384

Context.startActivity() に渡されるインテントで設定すると、このフラグにより、新しく起動されたタスクが現在のホーム アクティビティ タスクの上に配置されます (存在する場合)。 つまり、タスクから戻ると、ユーザーが最後に見たアクティビティでなくても、常にユーザーが自宅に戻ります。 これは、FLAG_ACTIVITY_NEW_TASKと組み合わせてのみ使用できます。

ClearTask 32768

Context.startActivity() に渡されるインテントで設定すると、このフラグを設定すると、アクティビティが開始される前に、アクティビティに関連付けられている既存のタスクがクリアされます。 つまり、アクティビティは空のタスクの新しいルートになり、古いアクティビティはすべて完了します。 これは、FLAG_ACTIVITY_NEW_TASKと組み合わせてのみ使用できます。

NoAnimation 65536

Context.startActivity() に渡されるインテントで設定すると、このフラグを設定すると、システムはアクティビティ遷移アニメーションを適用して次のアクティビティ状態に移動できなくなります。 これは、アニメーションが実行されないという意味ではありません。ここで開始されたアクティビティが表示される前に、このフラグを指定しない別のアクティビティ変更が発生した場合、その遷移が使用されます。 このフラグは、一連のアクティビティ操作を実行する場合に適切に使用できますが、ユーザーが表示するアニメーションは、最初のアクティビティの変更ではなく、後のアクティビティによって決まる必要があります。

ReorderToFront 131072

Context.startActivity() に渡されるインテントで設定されている場合、このフラグは、起動されたアクティビティが既に実行されている場合、そのタスクの履歴スタックの先頭に移動します。 たとえば、A、B、C、D の 4 つのアクティビティで構成されるタスクを考えてみましょう。アクティビティ B のコンポーネントに解決されるインテントを使用して D が startActivity() を呼び出すと、B は履歴スタックの先頭に移動され、結果として A、C、D、B の順序になります。FLAG_ACTIVITY_CLEAR_TOPも指定されている場合、このフラグは無視されます。

NoUserAction 262144

このフラグを設定すると、新しく開始されたアクティビティが前面に移動する前に、現在の最前面のアクティビティで通常の Activity.onUserLeaveHint() コールバックが発生するのを防ぐことができます。 通常、アクティビティはそのコールバックに依存して、明示的なユーザー アクションによってアクティビティがフォアグラウンドから移動されたことを示すことができます。 コールバックは、アクティビティのライフサイクル内の適切なポイントをマークして、点滅する LED など、"ユーザーが見るまで" に表示する通知を無視します。 通話受信やアラーム ハンドラーなどのユーザー主導以外のイベントを介してアクティビティが開始された場合は、このフラグを Context.startActivity に渡して、一時停止中のアクティビティがユーザーが通知を確認したとは思わないようする必要があります。 定数値: 262144 (0x00040000)

ClearWhenTaskReset 524288

この定数は、API レベル 21 では非推奨になりました。 API 21 の時点では、これは、代わりに使用する必要があるFLAG_ACTIVITY_NEW_DOCUMENTと同じように実行されます。

NewDocument 524288

このフラグは、このインテントによって起動されたアクティビティをルートとする新しいタスクにドキュメントを開くために使用されます。 このフラグまたはその同等の属性を使用すると、異なるドキュメントを含む同じアクティビティの R.attr.documentLaunchMode 複数のインスタンスが最近のタスク リストに表示されます。 このアクティビティ属性形式である R.attr.documentLaunchMode の使用は、ここで説明するインテント フラグよりも優先されます。 属性フォームを使用すると、アクティビティはアクティビティのすべての起動ツールに対して複数のドキュメント動作を指定できます。一方、このフラグを使用するには、アクティビティを起動する各意図で指定する必要があります。 このフラグ w.r.t の既定のセマンティクスは、アクティビティの完了後に保持される recents エントリが FLAG_ACTIVITY_NEW_TASK および R.attr.documentLaunchMode の使用と異なるかどうかに注意してください。このフラグを使用して新しい最近のエントリを作成する場合、既定では、アクティビティが完了すると、そのエントリが削除されます。 この動作は、FLAG_ACTIVITY_RETAIN_IN_RECENTS で変更できます。 FLAG_ACTIVITY_NEW_DOCUMENTは、FLAG_ACTIVITY_MULTIPLE_TASKと組み合わせて使用することができる。 単独で使用する場合は、R.attr.documentLaunchMode ="intoExisting" を指定するアクティビティ マニフェストに相当します。 FLAG_ACTIVITY_MULTIPLE_TASKと共に使用すると、R.attr.documentLaunchMode ="always" を指定するアクティビティ マニフェストに相当します。 アクティビティ マニフェストで R.attr.documentLaunchMode ="never" が指定されている場合、FLAG_ACTIVITY_MULTIPLE_TASKと組み合わせてもフラグは無視されます。 詳細については、R.attr.documentLaunchMode を参照してください。 R.attr.documentLaunchMode FLAG_ACTIVITY_MULTIPLE_TASK 定数値: 524288 (0x00080000) も参照してください。

LaunchedFromHistory 1048576

このフラグは通常、アプリケーション コードによって設定されませんが、このアクティビティが履歴 (longpress ホーム キー) から起動される場合は、システムによって設定されます。

ReceiverVisibleToInstantApps 2097152

設定すると、インスタント アプリの受信者にブロードキャストが表示されます。 既定では、インスタント アプリはブロードキャストを受信しません。 インスタント アプリで使用した場合、このフラグは無効です。

ResetTaskIfNeeded 2097152

設定され、このアクティビティが新しいタスクで開始されているか、既存のタスクの先頭に表示されている場合は、タスクのフロント ドアとして起動されます。

BroughtToFront 4194304

このフラグは通常、アプリケーション コードによって設定されるのではなく、singleTask モードの launchMode ドキュメントで説明されているようにシステムによって設定されます。

ExcludeFromRecents 8388608

設定した場合、新しいアクティビティは最近起動されたアクティビティの一覧に保持されません。

PreviousIsTop 16777216

設定され、この意図が既存のアクティビティから新しいアクティビティを起動するために使用されている場合、現在のアクティビティは、新しい意図を開始するのではなく、先頭に配信する必要があるかどうかを決定するための上位アクティビティとしてカウントされません。 前のアクティビティは、現在のアクティビティが直ちに終了することを前提として、トップとして使用されます。

ForwardResult 33554432

設定され、この意図が既存のアクティビティから新しいアクティビティを起動するために使用されている場合は、既存のアクティビティの応答ターゲットが新しいアクティビティに転送されます。

ClearTop 67108864

設定されていて、現在のタスクで起動中のアクティビティが既に実行されている場合は、そのアクティビティの新しいインスタンスを起動する代わりに、そのアクティビティの上にある他のすべてのアクティビティが閉じられ、この意図が新しい意図として (現在は上位にある) 古いアクティビティに配信されます。 たとえば、アクティビティ A、B、C、D で構成されるタスクを考えてみましょう。アクティビティ B のコンポーネントに解決されるインテントを使用して D が startActivity() を呼び出した場合、C と D は終了し、B は指定されたインテントを受け取り、スタックは A、B になります。上記の例で現在実行中のアクティビティ B のインスタンスは、onNewIntent() メソッドでここで開始している新しい意図を受け取るか、新しい意図で完了して再起動します。 起動モードを "multiple" (既定値) と宣言していて、同じ意図でFLAG_ACTIVITY_SINGLE_TOPを設定していない場合は、完了して再作成されます。他のすべての起動モードの場合、またはFLAG_ACTIVITY_SINGLE_TOPが設定されている場合、このインテントは現在のインスタンスの onNewIntent() に配信されます。 この起動モードは、FLAG_ACTIVITY_NEW_TASKと組み合わせて有効にすることもできます。タスクのルート アクティビティを開始するために使用すると、そのタスクの現在実行中のインスタンスがフォアグラウンドに移動し、そのルート状態にクリアされます。 これは、通知マネージャーからアクティビティを起動する場合などに特に便利です。 タスクの詳細については、「タスクとバック スタック」を参照してください。 定数値: 67108864 (0x04000000)

MultipleTask 134217728

NewTask always

既定のシステムにはグラフィカル タスク管理が含まれていないため、起動したタスクに戻るための何らかの方法をユーザーに提供しない限り、このフラグを使用しないでください。

NewTask

タスクの詳細については、「 タスクとバック スタック 」を参照してください。

ReceiverNoAbort 134217728

これが順序付けされたブロードキャストの場合は、受信者がブロードキャストを中止することを許可しないでください。 結果を後の受信者に伝達することはできますが、後の受信者にブロードキャストが表示されないようにすることはできません。

NewTask 268435456

設定すると、このアクティビティがこの履歴スタックの新しいタスクの開始になります。 タスク (開始したアクティビティから次のタスク アクティビティまで) は、ユーザーが移動できるアクティビティのアトミック グループを定義します。 タスクはフォアグラウンドとバックグラウンドに移動できます。特定のタスク内のすべてのアクティビティは常に同じ順序で保持されます。 タスクの詳細については、「タスクとバック スタック」を参照してください。 このフラグは、通常、"ランチャー" スタイルの動作を表示するアクティビティによって使用されます。実行できる個別の処理の一覧をユーザーに提供します。それ以外の場合は、起動するアクティビティとは完全に独立して実行されます。 このフラグを使用する場合、現在開始しているアクティビティに対してタスクが既に実行されている場合、新しいアクティビティは開始されません。代わりに、現在のタスクは、最後の状態で画面の前面に表示されます。 この動作を無効にするフラグについては、FLAG_ACTIVITY_MULTIPLE_TASKを参照してください。 呼び出し元が起動中のアクティビティの結果を要求している場合は、このフラグを使用できません。 定数値: 268435456 (0x10000000)

ReceiverForeground 268435456

設定されている場合、ブロードキャストを送信するときに、受信者はフォアグラウンド優先度で実行できます。タイムアウト間隔は短くなります。

ReceiverReplacePending 536870912

設定されている場合、ブロードキャストを送信するときに、新しいブロードキャストは、それに一致する既存の保留中のブロードキャストを置き換えます。 照合は、2 つのブロードキャストの意図に対して true を返す Intent.filterEquals によって定義されます。 一致が見つかると、新しいブロードキャスト (およびそれに関連付けられている受信者) は、保留中のブロードキャスト リスト内の既存のブロードキャストリストを置き換え、リスト内の同じ位置に残ります。 このフラグは、通常、固定ブロードキャストで使用されます。これは、ブロードキャストの最新の値を受信者に配信することのみを考慮します。

SingleTop 536870912

設定した場合、履歴スタックの先頭でアクティビティが既に実行されている場合、アクティビティは起動されません。

NoHistory 1073741824

設定した場合、新しいアクティビティは履歴スタックに保持されません。

ReceiverRegisteredOnly 1073741824

設定すると、ブロードキャストの送信時に登録されたレシーバーのみが呼び出されます。BroadcastReceiver コンポーネントは起動されません。

注釈

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象