Android 14 以降では、Android パッケージ インストーラでアプリに関するメタデータ(データ セーフティ方針など)を取り込んで、更新された位置情報の利用許可プロンプトなどの Android プラットフォーム機能で使用できます。
このメタデータを提供する方法は 2 つあります。
システム イメージにプリロードされたアプリの場合、デバイス メーカーは、以下で説明する永続化可能なバンドルを含む XML ファイルをシステム イメージに追加することで、アプリに関するメタデータを提供できます。
アプリがインストールまたは更新されている場合、このメタデータを指定するには、アプリ インストーラが
PersistableBundle
オブジェクトをsetAppMetadata()
メソッドに渡す必要があります。
トップレベルの永続型バンドルは、次の Key-Value ペアで構成されています。特に指定のない限り、各キーは省略可能です。
version
(必須)- アプリのメタデータ形式のバージョン番号。この現行バージョンの値として
2
を使用し、型としてlong
を使用します。想定されるAppMetadata
のキーまたはコンテンツ タイプが変更されると、Android によってバージョン番号が変更されます。 safety_labels
- アプリのセーフティ ラベルを指定する
PersistableBundle
オブジェクト。 system_app_safety_label
- アプリの system-app-safety-label を指定する
PersistableBundle
オブジェクト。システム サービスとして機能するアプリの場合、safety_labels
バンドルの代わりにsystem_app_safety_label
バンドルが使用されます。 transparency_info
- アプリの透明性情報を指定する
PersistableBundle
オブジェクト。
セーフティ ラベルの形式
safety_labels
バンドルには、次の Key-Value ペアが含まれています。
version
(必須)- セーフティ ラベル形式のバージョン番号。この現行バージョンの値として
1
を使用し、型としてlong
を使用します。 data_labels
- アプリが収集して共有するデータを指定する
PersistableBundle
オブジェクト。 security_labels
- アプリのデータの削除と暗号化の方針を指定する
PersistableBundle
オブジェクト。 third_party_verification
- アプリのデータ セーフティ方針がサードパーティによってどのように検証されるかを指定する
PersistableBundle
オブジェクト。
収集および共有されるデータ
data_labels
バンドルには、次の Key-Value ペアが含まれています。
data_collected
- アプリが収集するデータの種類を指定する
PersistableBundle
オブジェクト。 data_shared
- アプリが共有するデータタイプを指定する
PersistableBundle
オブジェクト。
データのカテゴリ
data_collected
キーと data_shared
キーはどちらも data_category
バンドル形式を使用します。この形式には、次のリストに示す Key-Value ペアが含まれています。各キーは、特定のカテゴリのデータタイプを指定する PersistableBundle
オブジェクトにマッピングされます。
personal
financial
location
email_text_message
photo_video
audio
storage
health_fitness
contacts
calendar
identifiers
app_performance
actions_in_app
search_and_browsing
データ型
data_category
バンドル内の各キーは、data_type
形式を使用する異なるバンドルにマッピングされます。data_type
形式で指定するキーは、data_category
に対して選択したキーによって異なります。
data_type
の考えられる Key-Value ペアを次のリストに示します。これらの各キーの値は、特定のデータタイプに対するアプリのデータ使用方針を記述する PersistableBundle
オブジェクトです。一部のデータ型は、キーを 1 つだけ使用します。
個人情報
name
email_address
physical_address
phone_number
race_ethnicity
political_or_religious_beliefs
sexual_orientation_or_gender_identity
personal_identifiers
other
金融情報
card_bank_account
purchase_history
credit_score
other
位置情報
approx_location
precise_location
メールとテキスト メッセージ
emails
text_messages
other
写真と動画
photos
videos
音声
sound_recordings
music_files
other
ストレージ
files_docs
健康、フィットネス
health
fitness
連絡先
contacts
カレンダー
calendar
ID
other
アプリのパフォーマンス
crash_logs
performance_diagnostics
other
アプリでのアクション
user_interaction
in_app_search_history
installed_apps
user_generated_content
other
検索とブラウジング
web_browsing_history
データ使用
data_usage
バンドルには、次の Key-Value ペアが含まれています。
purposes
(必須)-
データを収集または共有する特定の理由を表す整数の配列。
PersistableBundle
putIntArray
メソッドを使用します。バンドルごとに、以下で定義されている目的のうち少なくとも 1 つが必要です。1
: PURPOSE_APP_FUNCTIONALITY2
: PURPOSE_ANALYTICS(目的分析)3
: PURPOSE_DEVELOPER_COMMUNICATIONS4
: PURPOSE_FRAUD_PREVENTION_SECURITY5
: PURPOSE_ADVERTISING6
: PURPOSE_PERSONALIZATION7
: PURPOSE_ACCOUNT_MANAGEMENT
is_collection_optional
-
ブール値。ユーザーがデータ収集を有効または無効にできるかどうかを指定します。
注: この値は、データ収集を表す
data_category
バンドルにのみ設定します。データ共有には設定しないでください。 ephemeral
-
ブール値。アプリがサーバー側でディスク上ではなくメモリでのみデータを処理するかどうかを指定します。また、アプリが特定のデータ処理リクエストを処理するために必要な期間だけデータを保持するかどうかを指定します。
注: この値は、データ収集を表す
data_category
バンドルにのみ設定します。データ共有には設定しないでください。
データの削除と暗号化の方針
security_labels
バンドルには、アプリのデータ削除と暗号化の方針を表す Key-Value ペアが含まれています。
is_data_deletable
- ブール値。ユーザーがアプリにユーザーデータの削除をリクエストできるようにするかどうかを指定します。
is_data_encrypted
- ブール値。アプリによって収集されたすべてのユーザーデータを転送中に暗号化するかどうかを指定します。
サードパーティによる検証
third_party_verification
バンドルは、単一のキー url
で構成されています。文字列値で表されるこの URL は、アプリのデータ セーフティ情報の検証に使用するサードパーティのウェブサイトを指定します。
システム サービスのセーフティ ラベルの形式
システム サービスとして機能するアプリの場合、safety_labels
バンドルの代わりに system_app_safety_label
バンドルが使用され、次の Key-Value ペアが含まれます。
url
(必須)
- システム サービスとして機能するアプリの安全性に関する情報を含むページを指す URL。
- タイプとして
string
を使用します。 - プライバシー ポリシーの URL が指定されていない場合は、フォールバックとしてプライバシー ポリシーの URL を使用する必要があります。
- 注: Google Play ストアは
privacy_policy
をフォールバックとして使用します。
透明性に関する情報の形式
transparency_info
バンドルには、次の Key-Value ペアが含まれています。
developer_info
- アプリ デベロッパーに関する情報を指定する
PersistableBundle
オブジェクト。 app_info
- アプリに関する情報を指定する
PersistableBundle
オブジェクト。
デベロッパー情報
developer_info
バンドルには、次の Key-Value ペアが含まれています。
developer_#
- デベロッパーを識別する
PersistableBundle
オブジェクト。developer_info
には 1 つ以上のdeveloper_#
が含まれます。ここで、#
は整数です。たとえば、developer_0
、developer_1
、developer_2
などです。
デベロッパー
developer_#
バンドルには、次の Key-Value ペアが含まれています。
name
(必須)- デベロッパーの名前を示す文字列。
email
(必須)- デベロッパーのメールアドレスを示す文字列。
address
(必須)- デベロッパーの送付先住所を示す文字列。
country_region
(必須)- デベロッパーの国または地域を示す文字列。
website
- デベロッパーのウェブサイトを示す文字列。
app_registry
- デベロッパーのストアまたはレジストリを示す文字列。
- デベロッパーがストアやその他のレジストリにも登録されている場合、値はストアの Android パッケージ名またはレジストリの URL にする必要があります。
- 複数の店舗に対して複数のエントリが可能です。
- Google Play の場合は、
com.android.vending
を使用します。 - デベロッパーが Google Play SDK Index に登録されている SDK の場合は、この属性を省略します。
- デベロッパーがどのアプリストアやレジストリにも登録されていない場合は、この属性を省略します。
app_registry_id
- 指定された
app_registry
のデベロッパーの ID を示す文字列。 - デベロッパーがストアやその他のレジストリにも登録されている場合、値はストアまたはレジストリの ID にする必要があります。
- 複数の店舗に対して複数のエントリが可能です。
- Google Play に登録されているデベロッパーの場合、この値はデベロッパー ページの URL である必要があります(たとえば、https://play.google.com/store/apps/dev?id=5700313618786177705 はデベロッパーの Google LLC の URL です)。
- Google Play SDK Index に登録されている SDK デベロッパーの場合は、SDK の Google Play SDK Index URL を使用します(たとえば、https://play.google.com/sdks/details/com-google-android-gms-play-services-ads は、Google Mobile Ads(GMA)SDK の Google Play SDK Index URL です)。
- デベロッパーが別のストアやレジストリに登録されている場合は、アプリストアの URL などの識別子を指定できます。
- デベロッパーがどのアプリストアにも登録されていない場合は、この属性を省略できます。
アプリ情報
app_info
バンドルには、次の Key-Value ペアが含まれています。
title
(必須)- アプリのタイトルを示す文字列。
description
(必須)- 人間が読み取れる英語のテキストの blob でアプリの目的を説明する文字列。
contains_ads
(必須)- アプリに広告を表示するかどうかを宣言するブール値。
privacy_policy
(必須)
- ユーザーデータの処理方法を示すプライバシー ポリシーにリンクする URL 属性を含む文字列。
- ユーザーデータを送信するアプリでは必須です。
- アプリにこのリンクが含まれていない場合、アプリはユーザーデータを処理していないとみなされます。
category
(必須)アプリの主な目的を最もよく表すアプリのカテゴリのいずれかを含む文字列。
- Android(AOSP コンポーネントのみ)*
- アート&デザイン
- 車、乗り物
- 美容
- 書籍&参考書
- お店やサービス
- コミック
- 通信
- 出会い
- 説明
- エンターテイメント
- イベント
- 金融
- 食べ物、飲み物
- ゲーム
- 健康&フィットネス
- 住まい、インテリア
- インストーラ(アプリストアまたは他のインストーラの場合のみ)*
- ライブラリ&デモ
- ライフスタイル
- 地図とナビ
- 医療
- 音楽とオーディオ
- ニュース&雑誌
- 子育て、育児
- パーソナライズ
- 写真処理技術
- 仕事効率化
- セキュリティ*
- ショッピング
- ソーシャル
- スポーツ
- ツール
- 旅行&地域
- アップデータ(デバイスのデフォルトの無線(OTA)アップデート アプリの場合のみ)*
- 動画プレーヤー、エディタ
- 天気情報
contact_info
- アプリの連絡先情報(下記)を含む
PersistableBundle
オブジェクト。
連絡先情報
contact_info
バンドルには、次の Key-Value ペアが含まれています。
email
(必須)- アプリのメールアドレスを示す文字列。
website
- アプリのウェブサイトを示す文字列。