一部のアプリは自動的に公開されるため、<queries>
要素を宣言せずに操作できます。基本的な機能や一般的なユースケースをサポートする際に便利です。
自動的に公開されるアプリの種類
Android 11(API レベル 30)以降をターゲットとしているアプリに対しても、次の種類のアプリは常に公開されます。
- 自分のアプリ。
- メディア プロバイダなど、Android のコア機能を実装する特定のシステム パッケージ。
- 自分のアプリをインストールした他のアプリ。
- アクティビティから結果を取得するに記載されている手順で、
startActivityForResult()
メソッドを使用して自分のアプリ内でアクティビティを起動するすべてのアプリ。 - 自分のアプリ内のサービスを開始するか、サービスをバインドしているすべてのアプリ。
- 自分のアプリ内のコンテンツ プロバイダにアクセスするすべてのアプリ。
- コンテンツ プロバイダを備えていて、そのコンテンツ プロバイダにアクセスするための URI 権限を自分のアプリに付与しているアプリ。
- 自分のアプリから入力を受信するアプリ(自分のアプリがインプット メソッド エディタとして入力を提供している場合のみ)。
自動的に公開されるシステム パッケージ
Android のコア機能を実装する一部のシステム パッケージは、Android 11 以降をターゲットとしているアプリの場合でも自動的に公開されます。特定のパッケージのセットは、アプリを実行するデバイスによって異なります。
特定のデバイスのパッケージの完全なリストを表示するには、開発マシンのターミナルで次のコマンドを実行します。
adb shell dumpsys package queries
コマンド出力で、forceQueryable
セクションを見つけます。このセクションには、自分のアプリに対しデバイスが自動的に公開するパッケージのリストが含まれます。