Mulai Android 14, penginstal paket Android dapat menyerap metadata tentang aplikasi, seperti praktik keamanan data, untuk digunakan dalam fitur platform Android seperti sebagai dialog Izin akses lokasi yang diperbarui.
Ada dua cara untuk memberikan metadata ini:
Untuk aplikasi yang dimuat sebelumnya di image sistem, produsen perangkat dapat menyediakan metadata tentang aplikasi dengan menambahkan file XML ke image sistem dengan paket yang dapat dibuat permanen seperti yang dijelaskan di bawah.
Untuk aplikasi yang diinstal atau diupdate, Untuk menentukan metadata ini, app penginstal harus meneruskan objek
PersistableBundle
ke MetodesetAppMetadata()
.
Paket tingkat atas yang dapat dibuat permanen terdiri dari key-value pair berikut. Kecuali jika ditentukan sebaliknya, setiap kunci bersifat opsional.
version
(wajib diisi)- Nomor versi format metadata aplikasi. Gunakan
2
sebagai nilai untuk ini versi saat ini danlong
sebagai jenisnya. Jika kunci atau jenis konten yangAppMetadata
berubah, Android akan mengubah nomor versi. safety_labels
- Objek
PersistableBundle
yang menentukan label keamanan aplikasi. system_app_safety_label
- Objek
PersistableBundle
yang menentukan system-app-safety-label aplikasi. Untuk aplikasi yang bertindak sebagai layanan sistem, Paketsystem_app_safety_label
digunakan, bukan paketsafety_labels
. transparency_info
- Objek
PersistableBundle
yang menentukan transparansi aplikasi informasi tambahan.
Format label keamanan
Paket safety_labels
berisi key-value pair berikut:
version
(wajib diisi)- Nomor versi format label keamanan. Gunakan
1
sebagai nilai untuk ini versi saat ini danlong
sebagai jenisnya. data_labels
- Objek
PersistableBundle
yang menentukan data yang dikumpulkan dan dibagikan aplikasi. security_labels
- Objek
PersistableBundle
yang menentukan praktik enkripsi dan penghapusan data aplikasi. third_party_verification
- Objek
PersistableBundle
yang menentukan cara keamanan data aplikasi praktik tersebut diverifikasi oleh pihak ketiga.
Data yang dikumpulkan dan dibagikan
Paket data_labels
berisi key-value pair berikut:
data_collected
- Objek
PersistableBundle
yang menentukan jenis data yang diperlukan aplikasi pengguna. data_shared
- Objek
PersistableBundle
yang menentukan jenis data yang diperlukan aplikasi dibagikan.
Kategori data
Baik kunci data_collected
maupun data_shared
menggunakan format paket
data_category
yang berisi key-value pair yang ditampilkan dalam daftar berikut. Setiap kunci
dipetakan ke objek PersistableBundle
yang menentukan jenis data untuk
kategori tertentu.
personal
financial
location
email_text_message
photo_video
audio
storage
health_fitness
contacts
calendar
identifiers
app_performance
actions_in_app
search_and_browsing
Jenis data
Setiap kunci dalam paket data_category
dipetakan ke paket lain yang menggunakan
format data_type
. Kunci yang Anda tentukan dalam format data_type
bergantung
pada kunci yang Anda pilih untuk data_category
.
Key-value pair data_type
yang mungkin terjadi muncul dalam daftar berikut. Tujuan
untuk setiap kunci ini adalah objek PersistableBundle
yang menjelaskan
praktik penggunaan data aplikasi untuk jenis data tertentu tersebut. Beberapa jenis data
hanya menggunakan satu kunci.
Pribadi
name
email_address
physical_address
phone_number
race_ethnicity
political_or_religious_beliefs
sexual_orientation_or_gender_identity
personal_identifiers
other
Keuangan
card_bank_account
purchase_history
credit_score
other
Lokasi
approx_location
precise_location
Email dan pesan teks
emails
text_messages
other
Foto dan video
photos
videos
Audio
sound_recordings
music_files
other
Penyimpanan
files_docs
Kesehatan kebugaran
health
fitness
Kontak
contacts
Kalender
calendar
Pengenal (ID)
other
Performa aplikasi
crash_logs
performance_diagnostics
other
Tindakan dalam aplikasi
user_interaction
in_app_search_history
installed_apps
user_generated_content
other
Penelusuran dan penjelajahan
web_browsing_history
Penggunaan data
Paket data_usage
berisi key-value pair berikut:
purposes
(wajib diisi)-
Himpunan bilangan bulat yang mewakili alasan spesifik untuk mengumpulkan atau berbagi data dan menggunakan
PersistableBundle
putIntArray
. Setidaknya salah satu tujuan yang ditentukan di bawah ini diperlukan untuk setiap paket.1
: PURPOSE_APP_FUNCTIONALITY2
: PURPOSE_ANALYTICS3
: PURPOSE_DEVELOPER_COMMUNICATIONS4
: PURPOSE_FRAUD_PREVENTION_SECURITY5
: PURPOSE_ADVERTISING6
: PURPOSE_PERSONALIZATION7
: PURPOSE_ACCOUNT_MANAGEMENT
is_collection_optional
-
Nilai boolean Menentukan apakah pengguna dapat memilih untuk ikut serta atau tidak ikut serta, pengumpulan data.
Catatan: Tetapkan nilai ini hanya untuk
data_category
paket yang mewakili pengumpulan data; jangan setel untuk berbagi data. ephemeral
-
Nilai boolean Menentukan apakah aplikasi memproses data hanya sisi server dalam memori, bukan pada disk, dan bahwa aplikasi menyimpan data tidak lebih lama dari yang diperlukan untuk melayani pemrosesan data tertentu permintaan.
Catatan: Tetapkan nilai ini hanya untuk
data_category
paket yang mewakili pengumpulan data; jangan setel untuk berbagi data.
Praktik enkripsi dan penghapusan data
Paket security_labels
berisi key-value pair yang mewakili
praktik enkripsi dan penghapusan data:
is_data_deletable
- Nilai boolean. Menentukan apakah aplikasi mengizinkan pengguna untuk meminta atau tidak aplikasi untuk menghapus data pengguna mereka.
is_data_encrypted
- Nilai boolean. Menentukan apakah semua data pengguna yang dikumpulkan oleh aplikasi yang terenkripsi saat transit.
Verifikasi pihak ketiga
Paket third_party_verification
terdiri dari satu kunci, url
. URL ini,
sebagai nilai string, menentukan situs pihak ketiga yang digunakan untuk
memverifikasi informasi keamanan data aplikasi.
Format label keamanan layanan sistem
Untuk aplikasi yang bertindak sebagai layanan sistem, paket system_app_safety_label
digunakan sebagai pengganti paket safety_labels
dan berisi hal berikut
key-value pair:
url
(wajib)
- URL yang mengarah ke halaman yang berisi informasi keamanan untuk aplikasi yang bertindak sebagai layanan sistem.
- Gunakan
string
sebagai jenisnya. - Jika belum diberikan, URL kebijakan privasi harus digunakan sebagai pengganti.
- Catatan: Google Play Store menggunakan
privacy_policy
sebagai penggantian.
Format info transparansi
Paket transparency_info
berisi key-value pair berikut:
developer_info
- Objek
PersistableBundle
yang menentukan informasi tentang aplikasi developer. app_info
- Objek
PersistableBundle
yang menentukan informasi tentang aplikasi.
Info developer
Paket developer_info
berisi key-value pair berikut:
developer_#
- Objek
PersistableBundle
yang mengidentifikasi developer. Tujuandeveloper_info
berisi satu atau beberapadeveloper_#
, dengan#
adalah bilangan bulat. Misalnyadeveloper_0
,developer_1
,developer_2
, dan seterusnya.
Developer
Paket developer_#
berisi kunci/nilai berikut
pasangan:
name
(wajib)- String yang menyatakan nama developer.
email
(wajib)- String yang menyatakan alamat email developer.
address
(wajib)- String yang menyatakan alamat surat developer.
country_region
(wajib)- String yang menyatakan negara atau wilayah developer.
website
- String yang menyatakan situs developer.
app_registry
- String yang menyatakan toko atau registry developer.
- Jika developer juga terdaftar di toko atau registry lain, nilai harus berupa nama paket Android toko atau URL registry.
- Beberapa entri untuk beberapa toko diizinkan.
- Untuk Google Play, gunakan
com.android.vending
. - Jika developer adalah SDK yang tercantum dalam Google Play SDK Index, hapus ini .
- Jika developer tidak terdaftar di app store atau registry mana pun, hapus bagian ini .
app_registry_id
- String yang menyatakan ID developer untuk
app_registry
yang dinyatakan. - Jika developer juga terdaftar di toko atau registry lain, nilainya harus berupa identitas toko atau registry mereka.
- Beberapa entri untuk beberapa toko diizinkan.
- Untuk developer yang terdaftar di Google Play, nilai ini harus berupa URL halaman developer (misalnya, https://play.google.com/store/apps/dev?id=5700313618786177705 adalah URL untuk developer Google LLC).
- Jika developer adalah developer SDK yang tercantum di Google Play SDK Index, gunakan URL Google Play SDK Index SDK (misalnya, https://play.google.com/sdks/details/com-google-android-gms-play-services-ads adalah URL Google Play SDK Index dari Google Mobile Ads (GMA) SDK).
- Jika developer terdaftar di app store atau registry lain, URL atau ID lainnya dapat diberikan.
- Jika pengembang tidak terdaftar di {i>app store<i} mana pun, atribut ini dapat dihilangkan.
Info aplikasi
Paket app_info
berisi key-value pair berikut:
title
(wajib)- String yang menyatakan judul aplikasi.
description
(wajib)- String yang menyatakan tujuan aplikasi dalam blob teks yang dapat dibaca manusia dalam bahasa Inggris.
contains_ads
(wajib)- Boolean yang mendeklarasikan apakah aplikasi akan menampilkan iklan.
privacy_policy
(wajib)
- String yang berisi atribut URL yang tertaut ke kebijakan privasi yang merinci bagaimana data pengguna ditangani.
- Diperlukan untuk aplikasi yang mengirimkan data pengguna.
- Jika aplikasi tidak berisi link ini, aplikasi tersebut diasumsikan tidak menangani data pengguna.
category
(wajib)String yang berisi salah satu kategori aplikasi berikut yang paling menjelaskan tujuan utama aplikasi:
- Android (hanya untuk komponen AOSP)*
- Seni dan desain
- Mobil dan kendaraan
- Kecantikan
- Buku dan referensi
- Bisnis
- Komik
- Komunikasi
- Kencan
- Pendidikan
- Hiburan
- Peristiwa
- Keuangan
- Makanan dan minuman
- Game
- Kesehatan dan kebugaran
- Rumah dan rumah
- Penginstal (hanya untuk app store atau penginstal lainnya)*
- Library dan demo
- Gaya Hidup
- Peta dan navigasi
- Kedokteran
- Musik dan audio
- Berita dan majalah
- Mengasuh Anak
- Personalisasi
- Fotografi
- Produktivitas
- Keamanan*
- Belanja
- Sosial
- Olahraga
- Alat
- Wisata dan lokal
- Updater (hanya untuk aplikasi update over the air (OTA) default perangkat)*
- Editor dan pemutar video
- Cuaca
contact_info
- Objek
PersistableBundle
yang menyertakan informasi kontak untuk aplikasi (di bawah).
Info kontak
Paket contact_info
berisi key-value pair berikut:
email
(wajib)- String yang menyatakan alamat email untuk aplikasi.
website
- String yang menyatakan situs untuk aplikasi.