Android 14 では、フォト ピッカーを使用しない場合でも、アプリがアクセスできる写真を制限できるようになります

click fraud protection

Android 13 では、フォト ピッカーはギャラリーにアクセスするアプリのオプション API でしたが、Android 14 ではある程度必須になりました。

Android 13 のハイライト機能の 1 つは、アプリにアクセスを許可する写真やビデオをユーザーが選択できる新しいシステム コンポーネントであるフォト ピッカーです。 アプリは、ユーザーがフォト ピッカー経由で選択したアイテムにアクセスするために権限を要求する必要がないため、アプリと写真やビデオを共有するプライバシーを保護する方法になります。 Android 4.4 以降使用されているシステム ファイル ピッカーは、フォト ピッカーよりも多くの機能を提供しますが、それに比べて UI は時代遅れです。

フォト ピッカー (およびその前のシステム ファイル ピッカー) を使用すると、アプリがアクセスできる写真とビデオを制限できるため、プライバシーが保護されます。 残念ながら、Android 4.4 以降では下位互換性のあるバージョンが利用可能であっても、多くのアプリはフォト ピッカーをサポートしていません。 アプリはインテントを使用して具体的にフォト ピッカーを呼び出す必要がありますが、多くのアプリは何らかの理由でフォト ピッカーを使用しないことを選択します。 幸いなことに、それはもう問題ではないかもしれません アンドロイド14これは、アプリが実際に API を使用しているかどうかに関係なく、フォト ピッカーを介してアクセスできる写真やビデオ アプリをユーザーが選択する方法をテストしています。

多くのアプリは、 メディアストアAPI. システムは、メディア ストア コレクションと呼ばれるタイプごとにファイルのインデックスを作成し、アプリがメディア ストア API を使用してクエリできるデータベースを維持します。 メディア ストア API を使用するアプリは、自分が所有するファイルの読み取りや変更に許可を求める必要はありませんが、他のアプリが所有するファイルにアクセスするにはユーザーから許可を得る必要があります。

Android 10 以降、API レベル 29 以降をターゲットとするアプリには、 メディア ストア API を使用してファイルにアクセスする前に、ユーザーによる READ_EXTERNAL_STORAGE 権限 他のアプリによって所有されています。 Android 13 では、READ_EXTERNAL_STORAGE 権限は 3 つの異なる権限 (READ_MEDIA_AUDIO、READ_MEDIA_VIDEO、READ_MEDIA_IMAGES) に分割されました。 それぞれ、API レベル 33 を対象とするアプリに、メディア ストア API を使用して、他のユーザーが所有するオーディオ、ビデオ、画像ファイルにそれぞれアクセスする機能を付与します。 アプリ。

Android 14 では、READ_MEDIA_VIDEO、READ_MEDIA_IMAGES、ACCESS_MEDIA_LOCATION を READ_MEDIA_VISUAL_USER_SELECTED という新しい権限に組み合わせることで、メディア アクセス権限が再度変更されます。 その説明によれば、この権限により、API レベル 34 をターゲットとするアプリは「ユーザーが選択した画像およびビデオ ファイルを共有ストレージから読み取る」ことが可能になります。 ただし、Android 14 では、この新しい動作を API レベル 33 をターゲットとする既存のアプリに遡及的に適用する可能性があります。 Android 13) を使用して、READ_MEDIA_VIDEO または READ_MEDIA_IMAGES をリクエストします。

API レベル 33 をターゲットとするアプリが実行時権限ダイアログをトリガーして、ユーザーに READ_MEDIA_VIDEO または READ_MEDIA_IMAGES (またはその両方) を付与するよう求めると、Android 14 は、 「写真を選択」という許可ダイアログが表示されます。 このエントリをタップすると、新しいバージョンのフォト ピッカーが起動し、ユーザーがアプリにアクセスを許可する写真またはビデオを選択できるようになります。 に。 その後、アプリは、ユーザーが選択しない限り、ユーザーが特に選択したメディア アイテムにのみアクセスできます。 追加のメディア アイテムへのアクセスを拡張するか、画像やメディア ストア コレクション全体へのアクセスをアプリに許可します。 ビデオ。

許可ダイアログのこのエントリは、Android 14 DP1 ではデフォルトでは表示されません。これは、切り替えが必要な開発者フラグによって表示が制限されているためです。 ただし、この機能がリリースされれば、アプリがアクセスできる写真やビデオをユーザーが常に決定できるようになるため、プライバシーの面で大きなメリットとなるでしょう。

Photo Picker API をそのまま使用しているアプリはあまりにも少ないため、Google は実験を行うよう促しています。 既存のインテントをインターセプトする アプリがシステム ファイル ピッカーを起動するために使用するため、代わりにフォト ピッカーが起動されます。 Photo Picker には、クラウド メディア プロバイダーからのファイルがまだ表示されないなど、いくつかの欠陥があります (おそらく、すぐに表示されるようになるでしょう) 拡張SDK バージョン 5!) と 特定のアルバムのみを表示する デバイス上では、古いシステム ファイル ピッカーよりも優れており、ギャラリー内のすべての写真やビデオにアクセスできるすべてのアプリよりも確実に優れています。

Photo Picker API の実装に興味がある開発者は、最新バージョンにアップグレードする必要があります。 Jetpack アクティビティ ライブラリ、Android 4.4 ~ Android 10 上の Google Play Services を通じて提供される下位互換性のあるバージョン、またはを通じて提供されるフレームワーク提供バージョンの呼び出しを処理します。 MediaProvider メインライン モジュール.