Android 14
26 Juni 2024
2. Jenis Perangkat
-
Lihat revisi
- [7.6.1/H-1-1] hanya boleh mendukung ABI tunggal (baik khusus 64-bit atau khusus 32-bit).
Lihat revisi
Mulai persyaratan baru
Jika implementasi perangkat genggam menyertakan dukungan untuk Vulkan, implementasi tersebut:
- [7.1.4.2/H-1-1] HARUS memenuhi persyaratan yang ditentukan oleh profil Dasar Pengukuran Android 2021.
-
Lihat revisi
Mulai persyaratan baru
Jika penerapan perangkat Smartwatch menyertakan dukungan untuk Vulkan, penerapan tersebut:
- [7.1.4.2/W-1-1] HARUS memenuhi persyaratan yang ditentukan oleh profil Dasar Pengukuran Android 2021.
-
Lihat revisi
Mulai persyaratan baru
Jika penerapan perangkat Automotive menyertakan dukungan untuk Vulkan, penerapan tersebut:
- [7.1.4.2/A-1-1] HARUS memenuhi persyaratan yang ditentukan oleh profil Dasar Pengukuran Android 2021.
3. Software
-
Untuk parameter ODM_SKU:
Lihat revisi
Nilai kolom ini HARUS dapat dienkode sebagai ASCII 7-bit dan cocok dengan ekspresi reguler
^([0-9A-Za-z.,_-]+)$
.
5. Kompatibilitas Multimedia
-
Menambahkan detail untuk format/codec Vorbis:
Lihat revisi
Decoding: Dukungan untuk konten mono, stereo, 5.0 dan 5.1 dengan frekuensi pengambilan sampel 8000, 12000, 16000, 24000, dan 48.000 Hz.
Encoding: Dukungan untuk konten mono dan stereo dengan frekuensi pengambilan sampel 8000, 12000, 2600, 12000, 2600, 4800, 2600
7. Kompatibilitas Hardware
-
Lihat revisi
- [C-1-13] HARUS memenuhi persyaratan yang ditentukan oleh profil Dasar Pengukuran Android 2021.
-
Penghapusan:
Lihat revisi
- TIDAK BOLEH mengimplementasikan audio AOAv2 yang didokumentasikan dalam dokumentasi Open Accessory Protocol 2.0 Android. Audio AOAv2 tidak digunakan lagi mulai Android versi 8.0 (level API 26).
9. Kompatibilitas Model Keamanan
-
[C-SR-1] diberi nomor ulang menjadi [C-SR-7] untuk menghapus konten duplikat,dan menghapus [C-SR-8]:
Lihat revisi
[C-SR-1] SANGAT DIREKOMENDASIKAN untuk mempertahankan data kernel yang hanya ditulis selama inisialisasi ditandai sebagai hanya baca setelah inisialisasi (misalnya
__ro_after_init
).[C-SR-2] SANGAT DIREKOMENDASIKAN untuk mengacak tata letak kode kernel dan memori, serta untuk menghindari eksposur yang dapat mengganggu pengacakan (misalnya
CONFIG_RANDOMIZE_BASE
dengan entropi bootloader melalui/chosen/kaslr-seed Device Tree node
atauEFI_RNG_PROTOCOL
).[C-SR-3] SANGAT DIREKOMENDASIKAN untuk mengaktifkan integritas alur kontrol (CFI) di kernel guna memberikan perlindungan tambahan terhadap serangan penggunaan kembali kode (misalnya
CONFIG_CFI_CLANG
danCONFIG_SHADOW_CALL_STACK
).[C-SR-4] SANGAT DIREKOMENDASIKAN untuk tidak menonaktifkan Control-Flow Integrity (CFI), Shadow Call Stack (SCS), atau Integer Overflow Sanitization (IntSan) pada komponen yang telah mengaktifkannya.
[C-SR-5] SANGAT DIREKOMENDASIKAN untuk mengaktifkan CFI, SCS, dan IntSan bagi komponen userspace tambahan yang sensitif terhadap keamanan seperti yang dijelaskan dalam CFI dan IntSan.
[C-SR-6] SANGAT DIREKOMENDASIKAN untuk mengaktifkan inisialisasi stack dalam kernel untuk mencegah penggunaan variabel lokal yang tidak diinisialisasi (
CONFIG_INIT_STACK_ALL
atauCONFIG_INIT_STACK_ALL_ZERO
). Selain itu, implementasi perangkat SEHARUSNYA TIDAK mengasumsikan nilai yang digunakan oleh compiler untuk melakukan inisialisasi lokal.[C-SR-7] SANGAT DIREKOMENDASIKAN untuk mengaktifkan inisialisasi heap dalam kernel guna mencegah penggunaan alokasi heap yang tidak diinisialisasi (
CONFIG_INIT_ON_ALLOC_DEFAULT_ON
) dan TIDAK BOLEH mengasumsikan nilai yang digunakan oleh kernel untuk melakukan inisialisasi alokasi tersebut.
-
Lihat revisi
- [C-1-6] HARUS mendukung salah satu dari hal berikut:
- IKeymasterDevice 3.0,
- IKeymasterDevice 4.0,
- IKeymasterDevice 4.1,
- IKeyMintDevice versi 1, atau
- IKeyMintDevice versi 2.
- [C-1-6] HARUS mendukung salah satu dari hal berikut:
9.11.1. Layar Kunci Aman, Autentikasi, dan Perangkat Virtual:
Lihat revisi
- [C-8-3] Modul ini TIDAK BOLEH mengekspos API untuk digunakan oleh aplikasi pihak ketiga guna mengubah status kunci.
Lihat revisi
- [C-12-4] HARUS memanggil
TrustManagerService.revokeTrust()
- Setelah maksimum 24 jam sejak pemberian kepercayaan, atau
- Setelah periode tidak ada aktivitas selama 8 jam, atau
- Jika implementasinya tidak menggunakan rentang yang aman dan akurat secara kriptografis seperti yang ditetapkan dalam [C-12-5], saat koneksi yang mendasari ke perangkat fisik terdekat hilang.
- [C-12-5] Implementasi yang mengandalkan rentang yang aman dan akurat untuk memenuhi
persyaratan [C-12-4] HARUS menggunakan salah satu solusi berikut:
- Implementasi menggunakan UWB:
- HARUS memenuhi persyaratan kesesuaian, sertifikasi, akurasi, dan persyaratan kalibrasi untuk UWB yang dijelaskan dalam 7.4.9.
- HARUS menggunakan salah satu mode keamanan P-STS yang tercantum di 7.4.9.
- Implementasi menggunakan Wi-Fi Neighborhood Awareness Networking (NAN):
- HARUS memenuhi persyaratan akurasi di 2.2.1 [7.4.2.5/H-SR-1], gunakan bandwidth 160 MHz (atau lebih tinggi), dan ikuti langkah-langkah penyiapan pengukuran yang ditentukan dalam Kalibrasi Kehadiran.
- HARUS menggunakan Secure LTF seperti yang dijelaskan dalam IEEE 802.11az.
- Implementasi menggunakan UWB:
8 April 2024
2. Jenis Perangkat
-
Lihat revisi
Mulai persyaratan baru
Jika implementasi Perangkat genggam mendeklarasikan
FEATURE_BLUETOOTH_LE
, implementasi tersebut:- [7.4.3/H-1-3] HARUS mengukur dan mengompensasi offset Rx
untuk memastikan median BLE RSSI adalah -50 dBm +/-15 dB pada jarak 1 m dari
perangkat referensi yang melakukan transmisi pada
ADVERTISE_TX_POWER_HIGH
. - [7.4.3/H-1-4] HARUS mengukur dan mengompensasi offset Tx
untuk memastikan median BLE RSSI adalah -50 dBm +/-15 dB saat memindai dari
perangkat referensi yang diposisikan pada jarak 1 m dan mentransmisikan pada
ADVERTISE_TX_POWER_HIGH
.
- [7.4.3/H-1-3] HARUS mengukur dan mengompensasi offset Rx
untuk memastikan median BLE RSSI adalah -50 dBm +/-15 dB pada jarak 1 m dari
perangkat referensi yang melakukan transmisi pada
-
Lihat revisi
Jika implementasi perangkat genggam mendukung
HotwordDetectionService
System API atau mekanisme lain untuk deteksi frasa pengaktif tanpa indikasi akses mikrofon, implementasi tersebut:- [9.8/H-1-6] TIDAK BOLEH mengizinkan lebih dari 100 byte data dikirim keluar dari layanan deteksi frasa pengaktif pada setiap hasil frasa pengaktif yang berhasil kecuali untuk data audio yang diteruskan melalui HotwordAudioStream.
Lihat revisi
Ubah [9.8/H-1-13] menjadi:
- [9.8/H-SR-3] SANGAT DIREKOMENDASIKAN untuk memulai ulang proses hosting layanan deteksi frasa pengaktif setidaknya sekali setiap jam atau setiap 30 peristiwa pemicu hardware, mana saja yang lebih dulu.
Lihat revisi
Menghapus persyaratan [9.8.2/H-4-3], [9.8.2/H-4-4], [9.8.2/H-5-3].
-
Lihat revisi
Jika implementasi Perangkat genggam menampilkan
android.os.Build.VERSION_CODES.U
untukandroid.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS
, implementasi tersebut:- [7.5/H-1-3] HARUS mendukung properti
android.info.supportedHardwareLevel
sebagaiFULL
atau lebih baik untuk kamera utama belakang danLIMITED
atau yang lebih baik untuk kamera utama depan.
- [7.5/H-1-3] HARUS mendukung properti
-
Lihat revisi
Jika implementasi perangkat Televisi tidak memiliki layar bawaan, tetapi mendukung layar eksternal yang terhubung melalui HDMI, implementasi tersebut:
- [5.8/T-0-1] HARUS menyetel mode output HDMI
ke resolusi tertinggi untuk format piksel yang dipilih yang berfungsi
dengan kecepatan refresh 50 Hz atau 60 Hz untuk layar eksternal, bergantung pada kecepatan refresh
video untuk wilayah tempat penjualan perangkat.
HARUS menyetel mode output HDMI untuk memilih resolusi maksimum yang dapat didukung dengan kecepatan refresh 50 Hz atau 60 Hz.
- [5.8/T-0-1] HARUS menyetel mode output HDMI
ke resolusi tertinggi untuk format piksel yang dipilih yang berfungsi
dengan kecepatan refresh 50 Hz atau 60 Hz untuk layar eksternal, bergantung pada kecepatan refresh
video untuk wilayah tempat penjualan perangkat.
3. Software
-
Lihat revisi
- Menghapus persyaratan [C-1-9]
5. Kompatibilitas Multimedia
-
Lihat revisi
Jika implementasi perangkat mendeklarasikan dukungan untuk decoder Dolby Vision melalui
HDR_TYPE_DOLBY_VISION
, implementasi tersebut:- [C-1-3] HARUS menyetel ID trek dari lapisan dasar yang kompatibel dengan versi lama (jika ada) agar sama dengan ID trek lapisan Dolby Vision gabungan.
7. Kompatibilitas Hardware
7.1.1.1 Ukuran dan Bentuk Layar:
Lihat revisi
Jika implementasi perangkat mendukung layar yang mendukung konfigurasi ukuran
UI_MODE_TYPE_NORMAL
dan menggunakan tampilan fisik dengan sudut membulat untuk merender layar ini, implementasi tersebut akan:- [C-1-1] HARUS memastikan bahwa setidaknya salah satu dari persyaratan berikut
terpenuhi untuk setiap tampilan tersebut:
- Saat kotak dp berukuran
1518 dp x1518 dp ditambatkan di setiap sudut tampilan logis, setidaknya satu piksel setiap kotak akan terlihat di layar.
- Saat kotak dp berukuran
- [C-1-1] HARUS memastikan bahwa setidaknya salah satu dari persyaratan berikut
terpenuhi untuk setiap tampilan tersebut:
-
Lihat revisi
Persyaratan berikut diaktifkan kembali:
Jika implementasi perangkat mendeklarasikan
FEATURE_BLUETOOTH_LE
, implementasi tersebut:[C-SR-2] SANGAT DIREKOMENDASIKAN untuk mengukur dan mengompensasi offset Rx guna memastikan BLE RSSI median adalah -60 dBm +/-10 dB pada jarak 1 m dari perangkat referensi yang mentransmisikan pada
ADVERTISE_TX_POWER_HIGH
, dengan perangkat diorientasikan sedemikian rupa sehingga berada di 'bidang paralel' dengan layar menghadap ke arah yang sama.[C-SR-3] SANGAT DIREKOMENDASIKAN untuk mengukur dan mengompensasi offset Tx guna memastikan BLE RSSI median adalah -60 dBm +/-10 dB saat memindai dari perangkat referensi yang diposisikan pada jarak 1 m dan mentransmisikan pada
ADVERTISE_TX_POWER_HIGH
, dengan orientasi perangkat sehingga berada pada 'bidang paralel' dengan layar menghadap ke arah yang sama.
Lihat revisi
Memindahkan persyaratan [C-10-3] dan [C-10-4] ke 2.2.1. Perangkat keras.
- [C-10-3] HARUS mengukur dan mengompensasi offset Rx untuk
memastikan RSSI BLE median adalah -55dBm +/-10 dB pada jarak 1 m dari
perangkat referensi yang melakukan transmisi pada
ADVERTISE_TX_POWER_HIGH
. - [C-10-4] HARUS mengukur dan mengompensasi offset Tx untuk
memastikan RSSI BLE median adalah -55 dBm +/-10 dB saat memindai dari perangkat
referensi yang diposisikan pada jarak 1 m dan mentransmisikan pada
ADVERTISE_TX_POWER_HIGH
.
20 November 2023
2. Jenis Perangkat
-
Lihat revisi
Jika implementasi perangkat genggam mendeklarasikan dukungan untuk ABI 64-bit (dengan atau tanpa ABI 32-bit):
-
Lihat revisi
- [7.5/H-1-13] HARUS mendukung kemampuan
LOGICAL_MULTI_CAMERA
untuk kamera belakang utama jika ada lebih dari 1 kamera belakang RGB.
- [7.5/H-1-13] HARUS mendukung kemampuan
-
Lihat revisi
[5.8/T-0-1] HARUS menyetel mode output HDMI ke resolusi tertinggi untuk format SDR atau HDR yang dipilih yang berfungsi dengan kecepatan refresh 50 Hz atau 60 Hz untuk layar eksternal.
HARUS menyetel mode output HDMI untuk memilih resolusi maksimum yang dapat didukung dengan kecepatan refresh 50 Hz atau 60 Hz.
-
Lihat revisi
- [9/W-0-1] HARUS mendeklarasikan
android.hardware.security.model.compatible feature
.
- [9/W-0-1] HARUS mendeklarasikan
6. Kompatibilitas Opsi dan Developer Tools
-
Lihat revisi
- [C-0-12] HARUS menulis Atom
LMK_KILL_OCCURRED_FIELD_NUMBER
ke
Lihat revisi
- [C-0-13] HARUS mengimplementasikan perintah shell
dumpsys gpu --gpuwork
untuk menampilkan
- [C-0-12] HARUS menulis Atom
9. Kompatibilitas Model Keamanan
-
Lihat revisi
Jika implementasi perangkat menggunakan kernel Linux yang mampu mendukung SELinux, implementasi tersebut:
Lihat revisi
Jika implementasi perangkat menggunakan kernel selain Linux atau Linux tanpa SELinux, implementasi tersebut:
4 Oktober 2023
2. Jenis Perangkat
2.2 Persyaratan Perangkat Genggam:
Lihat revisi
Implementasi perangkat Android diklasifikasikan sebagai Perangkat Genggam jika memenuhi semua kriteria berikut:
- Memiliki ukuran layar diagonal fisik dalam rentang
4 inci
3,3 inci (atau 2,5 inci untuk implementasi perangkat yang disertakan pada API level 29 atau yang lebih lama)hingga 8 inci.
Mulai persyaratan baru
- Memiliki antarmuka input layar sentuh.
- Memiliki ukuran layar diagonal fisik dalam rentang
4 inci
-
Lihat revisi
Implementasi perangkat genggam:
- [7.1.1.1/H-0-1] HARUS memiliki minimal satu
layar yang kompatibel dengan Android yang memenuhi semua persyaratan yang dijelaskan pada dokumen ini.layar yang berukuran minimal 2,2 inci untuk tepi pendek dan 3,4” di tepi panjang.
Jika implementasi perangkat genggam mendukung rotasi layar software, implementasi tersebut:
- [7.1.1.1/H-1-1]* HARUS membuat layar logis yang tersedia untuk aplikasi pihak ketiga setidaknya 2 inci pada tepi pendek dan 2,7 inci pada tepi panjangnya. Perangkat yang dikirim di Android API level 29 atau yang lebih lama MUNGKIN dikecualikan dari persyaratan ini.
Jika implementasi perangkat genggam tidak mendukung rotasi layar software, implementasi tersebut:
- [7.1.1.1/H-2-1]* HARUS membuat layar logis yang tersedia untuk aplikasi pihak ketiga setidaknya 2,7 inci di tepi pendek. Perangkat yang dikirim di Android API level 29 atau yang lebih lama MUNGKIN dikecualikan dari persyaratan ini.
Mulai persyaratan baru
[7.1.1.1/H-0-3]* HARUS memetakan setiap tampilan
UI_MODE_NORMAL
yang disediakan untuk aplikasi pihak ketiga ke area tampilan fisik yang tidak terhalang setidaknya 2,2 inci pada tepi pendek dan 3,4 inci pada tepi panjang.[7.1.1.3/H-0-1]* HARUS menetapkan nilai
DENSITY_DEVICE_STABLE
menjadi 92% atau lebih besar dari kepadatan fisik sebenarnya untuk layar terkait.
Jika implementasi Perangkat genggam mendeklarasikan
android.hardware.audio.output
danandroid.hardware.microphone
, implementasi tersebut:[5.6/H-1-1] HARUS memiliki latensi Round-Trip Berkelanjutan Rata-rata 300 milidetik atau kurang dari 5 pengukuran, dengan Deviasi Absolut Rata-rata kurang dari 30 md, pada jalur data berikut: "speaker ke mikrofon", adaptor loopback 3,5 mm (jika didukung), loopback USB (jika didukung).
[5.6/H-1-2] HARUS memiliki latensi Ketuk untuk nada rata-rata 300 milidetik atau kurang dari setidaknya 5 pengukuran pada jalur data speaker ke mikrofon.
Jika implementasi perangkat genggam menyertakan setidaknya satu aktuator haptik, implementasi tersebut:
- [7.10/H]* TIDAK BOLEH menggunakan aktuator haptik (vibrator) yang memiliki massa putar eksentrik (ERM).
- [7.10/H]* SEHARUSNYA menerapkan semua konstanta publik untuk haptic yang jelas di android.view.HapticFeedbackConstants yaitu (CLOCK_TICK, CONTEXT_CLICK, KEYBOARD_PRESS, KEYBOARD_RELEASE, KEYBOARD_TAP, LONG_PRESS, TEXT_HANDLE_MOVE, VIRTUAL_CONFIRM, KEY RILIS, VIRTUAL_CONFIRM, KEY
- [7.10/H]* HARUS mengimplementasikan semua konstanta publik untuk
haptic yang jelas
di android.os.VibrationEffect
yaitu (Effect_TICK, Effect_CLICK, Effect_HEAVY_CLICK, dan
Effect_Double_CLICK) serta
konstanta publik yang memungkinkan
PRIMITIVE_*
untuk tampilan haptik yang jelas di android.os.ALL Efek{/1. Beberapa primitif ini, seperti LOW_TICK dan SPIN mungkin hanya memungkinkan jika vibrator dapat mendukung frekuensi yang relatif rendah. - [7.10/H]* HARUS mengikuti panduan untuk memetakan konstanta publik di android.view.HapticFeedbackConstants ke konstanta android.os.VibrationEffect yang direkomendasikan, dengan hubungan amplitudo yang sesuai.
- [7.10/H]* HARUS mengikuti penilaian kualitas untuk API createOneShot() dan createWaveform().
- [7.10/H]* SEHARUSNYA memverifikasi bahwa hasil API android.os.Vibrator.hasAmplitudeControl() publik mencerminkan kemampuan vibratornya dengan benar.
- [7.10/H]* HARUS memosisikan penempatan aktuator di dekat lokasi tempat perangkat biasanya dipegang atau disentuh dengan tangan.
Jika implementasi perangkat genggam menyertakan setidaknya satu aktuator resonansi linear 7.10 linear resonant, akan:
- [7.10/H] HARUS memosisikan penempatan aktuator di dekat lokasi tempat perangkat biasanya dipegang atau disentuh dengan tangan.
- [7.10/H] HARUS
menggerakkan aktuator haptik ke sumbu X (kiri-kanan)
pada orientasi standar
potretperangkat.
Jika implementasi perangkat genggam memiliki aktuator haptik tujuan umum yaitu aktuator resonant linear sumbu X (LRA), implementasi tersebut:
- [7.10/H] Seharusnya memiliki frekuensi resonansi LRA sumbu X di bawah 200 Hz.
- [7.1.1.1/H-0-1] HARUS memiliki minimal satu
-
Lihat revisi
Implementasi perangkat genggam HARUS mendukung format encoding video berikut dan menyediakannya untuk aplikasi pihak ketiga:
- [5,2/H-0-3] AV1
Implementasi perangkat genggam HARUS mendukung format decoding video berikut dan menyediakannya untuk aplikasi pihak ketiga:
- [5,3/H-0-6] AV1
-
Lihat revisi
Jika implementasi perangkat termasuk kunci navigasi fungsi terbaru seperti yang dijelaskan di bagian 7.2.3 mengubah antarmuka, implementasi tersebut:
- [3.8.3/H-1-1] HARUS mengimplementasikan perilaku penyematan layar dan memberikan menu setelan kepada pengguna untuk mengaktifkan/menonaktifkan fitur.
Jika implementasi perangkat genggam menyertakan dukungan untuk
ControlsProviderService
danControl
API serta memungkinkan aplikasi pihak ketiga memublikasikan kontrol perangkat, implementasi tersebut:- [3.8.16/H-1-6] Implementasi perangkat
HARUS merender kemampuan pengguna secara akurat sebagai berikut:
- Jika perangkat telah menetapkan
config_supportsMultiWindow=true
dan aplikasi mendeklarasikan metadataMETA_DATA_PANEL_ACTIVITY
di deklarasiControlsProviderService
, termasuk ComponentName dari aktivitas yang valid (sebagaimana ditentukan oleh API), aplikasi HARUS menyematkan aktivitas tersebut dalam kemampuan pengguna ini. - Jika tidak mendeklarasikan metadata
META_DATA_PANEL_ACTIVITY
, aplikasi HARUS merender kolom yang ditentukan seperti yang disediakan olehControlsProviderService
API, serta kolom tertentu yang disediakan oleh Control API.
- Jika perangkat telah menetapkan
- [3.8.16/H-1-7] Jika aplikasi mendeklarasikan metadata
META_DATA_PANEL_ACTIVITY
, aplikasi HARUS meneruskan nilai setelan yang ditentukan dalam [3.8.16/H-1-5] menggunakanEXTRA_LOCKSCREEN_ALLOW_TRIVIAL_CONTROLS
saat meluncurkan aktivitas tersemat.
Jika implementasi perangkat memungkinkan pengguna melakukan panggilan dalam bentuk apa pun,
- [7.4.1.2/H-0-1] HARUS mendeklarasikan tombol fitur
android.software.telecom
. - [7.4.1.2/H-0-2] HARUS menerapkan framework telekomunikasi.
2.2.4. Performa dan Keunggulan:
Lihat revisi
Implementasi perangkat genggam:
- [8.5/H-0-1] HARUS memberikan
kemampuan pengguna
di menu Setelanuntuk melihat semua aplikasi dengan layanan latar depan aktif atau tugas yang dimulai pengguna, termasuk durasi setiap layanan ini sejak dimulai seperti yang dijelaskan dalam dokumen SDK.dan kemampuan untuk menghentikan aplikasi yang menjalankan layanan latar depan atau aplikasi yang dimulai oleh pengguna.- Beberapa aplikasi mungkin dikecualikan dari penghentian atau dicantumkan dalam kemampuan pengguna seperti yang dijelaskan dalam dokumen SDK.
- [8.5/H-0-2]HARUS menyediakan kemampuan pengguna untuk menghentikan aplikasi yang menjalankan layanan latar depan atau tugas yang dimulai pengguna.
- [8.5/H-0-1] HARUS memberikan
kemampuan pengguna
-
Lihat revisi
Jika implementasi perangkat mendeklarasikan dukungan untuk
android.hardware.telephony
, implementasi perangkat akan:- [9.5/H-1-1] TIDAK BOLEH menetapkan
UserManager.isHeadlessSystemUserMode
ketrue
.
Jika implementasi perangkat memiliki layar kunci yang aman dan menyertakan satu atau beberapa trust agent, yang mengimplementasikan
TrustAgentService
System API, implementasi tersebut:- [9.11.1/H-1-1] HARUS menantang pengguna untuk salah satu metode autentikasi utama yang direkomendasikan (misalnya: PIN, pola, sandi) lebih sering dari sekali setiap 72 jam.
Jika implementasi Perangkat genggam menetapkan
UserManager.isHeadlessSystemUserMode
ketrue
, implementasi tersebutJika implementasi perangkat genggam mendukung
HotwordDetectionService
System API atau mekanisme lain untuk deteksi frasa pengaktif tanpa indikasi akses mikrofon, implementasi tersebut:- [9.8/H-1-1] HARUS memastikan layanan deteksi frasa pengaktif hanya dapat mengirimkan
data ke Sistem,
ContentCaptureService
, atau layanan pengenalan ucapan di perangkat yang dibuat olehSpeechRecognizer#createOnDeviceSpeechRecognizer()
. - [9.8/H-1-6] TIDAK BOLEH mengizinkan lebih dari 100 byte data (tidak termasuk streaming audio) dikirim keluar dari layanan deteksi frasa pengaktif pada setiap hasil frasa pengaktif yang berhasil.
- [9.8/H-1-15] HARUS memastikan bahwa streaming audio yang disediakan pada hasil frasa pengaktif yang berhasil dikirim satu arah dari layanan deteksi frasa pengaktif ke layanan interaksi suara.
Jika implementasi perangkat menyertakan aplikasi yang menggunakan System API
HotwordDetectionService
, atau mekanisme serupa untuk deteksi frasa pengaktif tanpa indikasi penggunaan mikrofon, aplikasi akan:- [9.8/H-2-3] TIDAK BOLEH mentransmisikan dari layanan deteksi frasa pengaktif, data
audio, data yang dapat digunakan untuk merekonstruksi (seluruhnya atau sebagian) konten audio,
atau audio yang tidak terkait dengan frasa pengaktif itu sendiri, kecuali untuk
ContentCaptureService
atau layanan pengenalan ucapan di perangkat.
Jika implementasi perangkat genggam mendukung
VisualQueryDetectionService
System API atau mekanisme lain untuk deteksi kueri tanpa indikasi akses mikrofon dan/atau kamera, implementasi tersebut:- [9.8/H-3-1] HARUS memastikan layanan deteksi kueri hanya dapat mengirimkan
data ke Sistem, atau
ContentCaptureService
, atau layanan pengenalan ucapan di perangkat (yang dibuat olehSpeechRecognizer#createOnDeviceSpeechRecognizer()
). - [9.8/H-3-2] TIDAK BOLEH mengizinkan informasi audio atau video apa pun dikirim
dari
VisualQueryDetectionService
, kecuali keContentCaptureService
atau layanan pengenalan ucapan di perangkat. - [9.8/H-3-3] HARUS menampilkan pemberitahuan pengguna di UI Sistem saat perangkat mendeteksi niat pengguna untuk berinteraksi dengan Aplikasi Asisten Digital (misalnya, dengan mendeteksi kehadiran pengguna melalui kamera).
- [9.8/H-3-4] HARUS menampilkan indikator mikrofon dan menampilkan kueri pengguna yang terdeteksi di UI tepat setelah kueri pengguna terdeteksi.
- [9.8/H-3-5] TIDAK BOLEH mengizinkan aplikasi yang dapat diinstal pengguna menyediakan layanan deteksi kueri visual.
- [9.5/H-1-1] TIDAK BOLEH menetapkan
-
Lihat revisi
Jika implementasi Perangkat genggam menampilkan
android.os.Build.VERSION_CODES.T
untukandroid.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS
, implementasi tersebut:- HARUS memenuhi persyaratan media yang tercantum di Android 13 CDD bagian 2.2.7.1.
Mulai persyaratan baru
Jika implementasi Perangkat genggam menampilkanandroid.os.Build.VERSION_CODES.U
untukandroid.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS
, implementasi tersebut:- [5.1/H-1-1] HARUS mengiklankan jumlah maksimum sesi dekoder video hardware
yang dapat dijalankan secara serentak dalam kombinasi codec apa pun melalui
metode
CodecCapabilities.getMaxSupportedInstances()
danVideoCapabilities.getSupportedPerformancePoints()
. - [5.1/H-1-2] HARUS mendukung 6 instance sesi decoder video hardware 8-bit (SDR) (AVC, HEVC, VP9, AV1, atau yang lebih baru) dalam kombinasi codec apa pun yang berjalan bersamaan dengan 3 sesi pada resolusi 1080p@30 fps dan 3 sesi pada resolusi 4k@30 fps, kecuali AV1. Codec AV1 hanya diperlukan untuk mendukung resolusi 1080p, tetapi tetap harus mendukung 6 instance pada 1080p30fps.
- [5.1/H-1-3] HARUS mengiklankan jumlah maksimum sesi encoder video hardware
yang dapat dijalankan secara serentak dalam kombinasi codec apa pun melalui
metode
CodecCapabilities.getMaxSupportedInstances()
danVideoCapabilities.getSupportedPerformancePoints()
. - [5.1/H-1-4] HARUS mendukung 6 instance sesi encoder video hardware 8-bit (SDR) (AVC, HEVC, VP9, AV1, atau yang lebih baru) dalam kombinasi codec apa pun yang berjalan bersamaan dengan 4 sesi pada resolusi 1080p@30 fps dan 2 sesi pada resolusi 4k@30 fps, kecuali AV1. Codec AV1 hanya diperlukan untuk mendukung resolusi 1080p, tetapi tetap harus mendukung 6 instance pada 1080p30fps.
- [5.1/H-1-5] HARUS mengiklankan jumlah maksimum sesi encoder dan decoder video hardware yang dapat dijalankan secara serentak dalam kombinasi codec apa pun melalui metode
CodecCapabilities.getMaxSupportedInstances()
danVideoCapabilities.getSupportedPerformancePoints()
. - [5.1/H-1-6] HARUS mendukung 6 instance dekoder video hardware 8-bit (SDR) dan sesi encoder video hardware (AVC, HEVC, VP9, AV1, atau yang lebih baru) dalam kombinasi codec apa pun yang berjalan serentak dengan 3 sesi pada resolusi 4K@30 fps (kecuali AV1), dengan resolusi paling banyak 2 adalah sesi encoder dengan resolusi 10p dan 3 sesi dengan resolusi 4K@30 fps (kecuali AV1). Codec AV1 hanya diperlukan untuk mendukung resolusi 1080p, tetapi tetap harus mendukung 6 instance pada 1080p30fps.
- [5.1/H-1-19] HARUS mendukung 3 instance dekoder video hardware 10-bit (HDR) dan sesi encoder video hardware (AVC, HEVC, VP9, AV1, atau yang lebih baru) dalam kombinasi codec apa pun yang berjalan bersamaan pada resolusi 4K@30 fps (kecuali AV1) yang paling banyak adalah format input GL0_1 RGB0 yang dapat dikonfigurasi dalam platform encoder1 RGB0, yang dapat dikonfigurasi secara bersamaan pada resolusi 4K@30 fps (kecuali AV1). Pembuatan metadata HDR oleh encoder tidak diperlukan jika encoding dari platform GL. Sesi codec AV1 hanya diperlukan untuk mendukung resolusi 1080p meskipun persyaratan ini memerlukan 4K.
- [5.1/H-1-7] HARUS memiliki latensi inisialisasi codec sebesar 40 md atau kurang untuk sesi encoding video 1080p atau lebih kecil untuk semua encoder video hardware saat dalam beban. Muat di sini didefinisikan sebagai sesi transcoding khusus video 1080p hingga 720p yang menggunakan codec video hardware bersama dengan inisialisasi perekaman audio-video 1080p. Untuk codec Dolby Vision, latensi inisialisasi codec HARUS 50 md atau kurang.
- [5.1/H-1-8] HARUS memiliki latensi inisialisasi codec sebesar 30 md atau kurang untuk sesi encoding audio dengan kecepatan bit 128 kbps atau lebih rendah untuk semua encoder audio saat dalam pemuatan. Muat di sini didefinisikan sebagai sesi transcoding khusus video 1080p hingga 720p yang menggunakan codec video hardware bersama dengan inisialisasi perekaman audio-video 1080p.
- [5.1/H-1-9] HARUS mendukung 2 instance sesi decoder video hardware aman (AVC, HEVC, VP9, AV1, atau yang lebih baru) dalam kombinasi codec apa pun yang berjalan secara serentak pada resolusi 4K@30 fps (kecuali AV1) untuk konten HDR 8-bit (SDR) dan 10-bit. Sesi codec AV1 hanya diperlukan untuk mendukung resolusi 1080p meskipun persyaratan ini memerlukan 4K.
- [5.1/H-1-10] HARUS mendukung 3 instance sesi decoder video hardware tidak aman bersama dengan 1 instance sesi decoder video hardware aman (total 4 instance) (AVC, HEVC, VP9, AV1, atau yang lebih baru) dalam kombinasi codec apa pun yang berjalan bersamaan dengan 3 sesi pada resolusi 4K@30 fps (kecuali satu decoder 0.1 fps aman pada sesi HDR0.0 fps yang mencakup sesi decoder 0.1 fps aman pada Sesi codec AV1 hanya diperlukan untuk mendukung resolusi 1080p meskipun persyaratan ini memerlukan 4K.
- [5.1/H-1-11] HARUS mendukung decoder aman untuk setiap decoder AVC, HEVC, VP9, atau AV1 hardware di perangkat.
- [5.1/H-1-12] HARUS memiliki latensi inisialisasi codec sebesar 40 md atau kurang untuk sesi decoding video 1080p atau lebih kecil untuk semua decoder video hardware saat dalam pemuatan. Muat di sini didefinisikan sebagai sesi transcoding khusus video 1080p hingga 720p yang menggunakan codec video hardware bersama dengan inisialisasi pemutaran audio-video 1080p. Untuk codec Dolby Vision, latensi inisialisasi codec HARUS 50 md atau kurang.
- [5.1/H-1-13] HARUS memiliki latensi inisialisasi codec sebesar 30 md atau kurang untuk sesi decoding audio dengan kecepatan bit 128 kbps atau lebih rendah untuk semua decoder audio saat dalam pemuatan. Muat di sini didefinisikan sebagai sesi transcoding khusus video 1080p hingga 720p yang menggunakan codec video hardware bersama dengan inisialisasi pemutaran audio-video 1080p.
- [5.1/H-1-14] HARUS mendukung decoder hardware AV1 Main 10, Level 4.1, dan film grain.
- [5.1/H-1-15] HARUS memiliki setidaknya 1 hardware video decoder yang mendukung 4K60.
- [5.1/H-1-16] HARUS memiliki minimal 1 encoder video hardware yang mendukung 4K60.
- [5.3/H-1-1] TIDAK BOLEH menurunkan lebih dari 1 frame dalam 10 detik (yaitu kurang dari 0,167 persen penurunan frame) untuk sesi video 4K 60 fps saat beban.
- [5.3/H-1-2] TIDAK BOLEH menurunkan lebih dari 1 frame dalam 10 detik selama perubahan resolusi video dalam sesi video 60 fps yang dimuat untuk sesi 4K.
- [5.6/H-1-1] HARUS memiliki latensi tap-to-tone 80 milidetik atau kurang menggunakan uji tap-to-tone CTS Verifier.
- [5.6/H-1-2] HARUS memiliki latensi audio bolak-balik sebesar 80 milidetik atau kurang pada setidaknya satu jalur data yang didukung.
- [5.6/H-1-3] HARUS mendukung audio >=24-bit untuk output stereo melalui colokan audio
3,5 mm jika ada dan melalui audio USB jika didukung melalui seluruh jalur data
untuk konfigurasi streaming dan latensi rendah. Untuk konfigurasi latensi rendah, AAudio harus digunakan oleh aplikasi dalam mode callback
latensi rendah. Untuk konfigurasi streaming, Java AudioTrack harus digunakan oleh
aplikasi. Dalam konfigurasi streaming dan latensi rendah, sink output
HAL harus menerima
AUDIO_FORMAT_PCM_24_BIT
,AUDIO_FORMAT_PCM_24_BIT_PACKED
,AUDIO_FORMAT_PCM_32_BIT
, atauAUDIO_FORMAT_PCM_FLOAT
untuk format output targetnya. - [5.6/H-1-4] HARUS mendukung perangkat audio USB >=4 channel (Ini digunakan oleh pengontrol DJ untuk melihat pratinjau lagu.)
- [5.6/H-1-5] HARUS mendukung perangkat MIDI yang sesuai dengan class dan mendeklarasikan flag fitur MIDI.
- [5.6/H-1-9] HARUS mendukung setidaknya 12 pencampuran saluran. Hal ini menyiratkan kemampuan untuk membuka AudioTrack dengan mask saluran 7.1.4 dan spasial atau downmix semua saluran ke stereo dengan benar.
- [5.6/H-SR] SANGAT DIREKOMENDASIKAN untuk mendukung mixing 24 saluran dengan setidaknya dukungan untuk mask saluran 9.1.6 dan 22.2.
- [5.7/H-1-2] HARUS mendukung
MediaDrm.SECURITY_LEVEL_HW_SECURE_ALL
dengan kemampuan dekripsi konten di bawah.
Ukuran sampel minimum 4 MiB Jumlah Minimum Subsampel - H264 atau HEVC 32 Jumlah Minimum Subsampel - VP9 9 Jumlah Minimum Subsampel - AV1 288 Ukuran buffer subsampel minimum 1 MiB Ukuran buffer kripto umum minimum 500 KiB Jumlah Minimum sesi serentak 30 Jumlah minimum kunci per sesi 20 Jumlah Total Kunci Minimum (semua sesi) 80 Jumlah Total Minimum Kunci DRM (semua sesi) 6 Ukuran Pesan 16 KiB Frame yang Didekripsi per Detik 60 fps - [5.1/H-1-17] HARUS memiliki minimal 1 decoder image hardware yang mendukung Profil Dasar Pengukuran AVIF.
- [5.1/H-1-18] HARUS mendukung encoder AV1 yang dapat mengenkode resolusi hingga 480p pada 30 fps dan 1 Mbps.
[5.12/H-1-1] HARUS[5.12/H-SR] Sangat Direkomendasikan untuk mendukung dukungan fiturFeature_HdrEditing
untuk semua encoder AV1 dan HEVC hardware yang ada di perangkat.- [5.12/H-1-2] HARUS mendukung format warna RGBA_1010102 untuk semua encoder AV1 dan HEVC hardware yang ada di perangkat.
- [5.12/H-1-3] HARUS mengiklankan dukungan untuk ekstensi EXT_YUV_target untuk mengambil sampel dari tekstur YUV baik pada 8 maupun 10-bit.
- [7.1.4/H-1-1] HARUS memiliki minimal 6 overlay hardware di Hardware composer (HWC) Unit pemrosesan data (DPU), dengan setidaknya 2 di antaranya mampu menampilkan konten video 10-bit.
Jika implementasi Perangkat genggam menampilkan
android.os.Build.VERSION_CODES.U
untukandroid.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS
dan menyertakan dukungan untuk encoder AVC atau HEVC hardware, maka implementasi tersebut:- [5.2/H-2-1] HARUS memenuhi target kualitas minimum yang ditentukan oleh kurva distorsi laju encoder video untuk codec AVC dan HEVC hardware, seperti yang ditentukan dalam dokumentasi berikutnya.
-
Lihat revisi
Jika implementasi Perangkat genggam menampilkanandroid.os.Build.VERSION_CODES.U
untukandroid.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS
, implementasi tersebut:- [7.5/H-1-1] HARUS memiliki kamera belakang utama dengan resolusi minimal 12 megapiksel yang mendukung perekaman video 4k@30 fps. Kamera belakang utama adalah kamera belakang dengan ID kamera terendah.
- [7.5/H-1-2] HARUS memiliki kamera depan utama dengan resolusi minimal 6 megapiksel dan mendukung perekaman video 1080p@30 fps. Kamera depan utama adalah kamera depan dengan ID kamera terendah.
- [7.5/H-1-3] HARUS mendukung properti
android.info.supportedHardwareLevel
sebagai LENGKAP atau lebih baik untuk kedua kamera utama. - [7.5/H-1-4] HARUS mendukung
CameraMetadata.SENSOR_INFO_TIMESTAMP_SOURCE_REALTIME
untuk kedua kamera utama. - [7.5/H-1-5] HARUS memiliki latensi pengambilan JPEG camera2 < 1.000
900md untuk resolusi 1080p seperti yang diukur oleh PerformanceTest kamera CTS dalam kondisi pencahayaan ITS (3000K) untuk kedua kamera utama. - [7.5/H-1-6] HARUS memiliki latensi pengaktifan kamera2 (membuka kamera ke frame pratinjau pertama) < 500 md seperti yang diukur oleh PerformanceTest kamera CTS dalam kondisi pencahayaan ITS (3.000 K) untuk kedua kamera utama.
- [7.5/H-1-8] HARUS mendukung
CameraMetadata.REQUEST_AVAILABLE_CAPABILITIES_RAW
danandroid.graphics.ImageFormat.RAW_SENSOR
untuk kamera belakang utama. - [7.5/H-1-9] HARUS memiliki kamera utama hadap belakang yang mendukung 720p atau 1080p @ 240 fps.
- [7.5/H-1-10] HARUS memiliki ZOOM_RATIO min < 1,0 untuk kamera utama jika ada kamera RGB ultrawide yang menghadap ke arah yang sama.
- [7.5/H-1-11] HARUS mengimplementasikan streaming depan belakang secara serentak pada kamera utama.
- [7.5/H-1-12] HARUS mendukung
CONTROL_VIDEO_STABILIZATION_MODE_PREVIEW_STABILIZATION
untuk kamera depan dan kamera belakang utama. - [7.5/H-1-13] HARUS mendukung kemampuan
LOGICAL_MULTI_CAMERA
untuk kamera utama jika ada lebih dari 1 kamera RGB yang menghadap ke arah yang sama. - [7.5/H-1-14] HARUS mendukung kemampuan
STREAM_USE_CASE
untuk kamera depan dan kamera belakang utama. - [7.5/H-1-15] HARUS mendukung
Bokeh &Ekstensi mode malam melalui ekstensi CameraX dan Camera2 untuk kamera utama. - [7.5/H-1-16] HARUS mendukung kemampuan DYNAMIC_RANGE_TEN_BIT untuk kamera utama.
- [7.5/H-1-17] HARUS mendukung CONTROL_SCENE_MODE_FACE_PRIORITY dan deteksi wajah (STATISTICS_FACE_DETECT_MODE_SIMPLE atau STATISTICS_FACE_DETECT_MODE_FULL) untuk kamera utama.
-
Lihat revisi
Jika implementasi Perangkat genggam menampilkanandroid.os.Build.VERSION_CODES.U
untukandroid.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS
, implementasi tersebut:- [7.1.1.1/H-2-1] HARUS memiliki resolusi layar minimal 1080p.
- [7.1.1.3/H-2-1] HARUS memiliki kepadatan layar minimal 400 dpi.
- [7.1.1.3/H-3-1] HARUS memiliki layar HDR yang mendukung rata-rata setidaknya 1.000 nit.
- [7.6.1/H-2-1] HARUS memiliki memori fisik minimal 8 GB.
-
Lihat revisi
Jika implementasi Perangkat genggam menampilkanandroid.os.Build.VERSION_CODES.U
untukandroid.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS
, implementasi tersebut:- [8.2/H-1-1] HARUS memastikan performa operasi tulis sekuensial setidaknya 150 MB/dtk.
- [8.2/H-1-2] HARUS memastikan performa tulis acak setidaknya 10 MB/s.
- [8.2/H-1-3] HARUS memastikan performa baca berurutan setidaknya 250 MB/dtk.
- [8.2/H-1-4] HARUS memastikan kinerja pembacaan acak setidaknya 100 MB/s.
- [8.2/H-1-5] HARUS memastikan performa baca dan tulis berurutan paralel dengan performa 2x baca dan 1x tulis minimal 50 MB/dtk.
-
Lihat revisi
Implementasi perangkat televisi HARUS mendukung format encoding video berikut dan menyediakannya untuk aplikasi pihak ketiga:
- [5,2/T-0-3] AV1
Implementasi perangkat televisi HARUS mendukung format dekode video berikut dan menyediakannya untuk aplikasi pihak ketiga:
- [5.3.2/T-0-7] AV1
-
Lihat revisi
Jika implementasi perangkat memiliki layar kunci yang aman dan menyertakan satu atau beberapa trust agent, yang mengimplementasikan
TrustAgentService
System API, implementasi tersebut:- [9.11.1/W-1-1] HARUS menantang pengguna untuk salah satu metode autentikasi utama yang direkomendasikan (misalnya: PIN, pola, sandi) lebih sering dari sekali setiap 72 jam.
-
Lihat revisi
Jika implementasi perangkat menyertakan dukungan untuk radio siaran AM/FM dan menampilkan fungsinya ke aplikasi apa pun, implementasi tersebut:
- [7.4
.10/A-0-1] HARUS mendeklarasikan dukungan untukFEATURE_BROADCAST_RADIO
.
Kamera tampilan eksterior adalah kamera yang merekam adegan di luar implementasi perangkat, seperti kamera belakang.
Implementasi perangkat otomotif:
- HARUS menyertakan satu atau beberapa kamera tampilan eksterior.
Jika implementasi perangkat Automotive menyertakan kamera tampilan eksterior, untuk kamera tersebut, implementasi perangkat tersebut:
- [7.5/A-1-1] TIDAK BOLEH memiliki kamera tampilan eksterior yang dapat diakses melalui Android Camera API, kecuali jika kamera tersebut mematuhi persyaratan inti kamera.
- [7.5/A-SR-1] SANGAT DIREKOMENDASIKAN untuk tidak memutar atau mencerminkan pratinjau kamera secara horizontal.
- [7.5/A-SR-2] SANGAT DIREKOMENDASIKAN untuk memiliki resolusi minimal 1,3 megapiksel.
- HARUS memiliki hardware fokus tetap atau EDOF (kedalaman bidang yang diperluas).
- Mungkin memiliki fokus otomatis hardware atau fokus otomatis software yang diimplementasikan pada driver kamera.
Jika implementasi perangkat otomotif menyertakan satu atau beberapa kamera tampilan eksterior, dan memuat layanan Exterior View System (EVS), maka untuk kamera tersebut, kamera tersebut:
- [7.5/A-2-1] TIDAK BOLEH memutar atau mencerminkan pratinjau kamera secara horizontal.
Implementasi perangkat otomotif:
- DAPAT mencakup satu atau beberapa kamera yang tersedia untuk aplikasi pihak ketiga.
Jika penerapan perangkat otomotif menyertakan setidaknya satu kamera dan membuatnya tersedia untuk aplikasi pihak ketiga, penerapan tersebut akan:
- [7.5/A-3-1] HARUS melaporkan tombol fitur
android.hardware.camera.any
. - [7.5/A-3-2] TIDAK BOLEH mendeklarasikan kamera sebagai kamera sistem.
- Mungkin mendukung kamera eksternal yang dijelaskan di bagian 7.5.3.
- DAPAT mencakup fitur (seperti fokus otomatis, dll.) yang tersedia untuk kamera belakang seperti yang dijelaskan di bagian 7.5.1.
Kamera belakang berarti kamera menghadap dunia yang dapat ditempatkan di mana saja pada kendaraan dan menghadap ke bagian luar kabin kendaraan; yaitu, menggambar pemandangan di sisi jauh bodi kendaraan, seperti kamera belakang.
Kamera depan berarti kamera menghadap pengguna yang dapat ditempatkan di mana saja pada kendaraan dan menghadap ke dalam kabin kendaraan; yaitu kamera gambar pengguna, seperti untuk konferensi video dan aplikasi serupa.
Implementasi perangkat otomotif:
- [7.5/A-SR-1] SANGAT DIREKOMENDASIKAN untuk menyertakan satu atau beberapa kamera menghadap dunia.
- MUNGKIN mencakup satu atau beberapa kamera yang menghadap pengguna.
- [7.5/A-SR-2] SANGAT DIREKOMENDASIKAN untuk mendukung streaming beberapa kamera secara serentak.
Jika implementasi perangkat Automotive menyertakan setidaknya satu kamera yang menghadap dunia, maka untuk kamera tersebut, kamera tersebut:
- [7.5/A-1-1] HARUS diorientasikan agar dimensi panjang kamera sejajar dengan bidang X-Y sumbu sensor otomotif Android.
- [7.5/A-SR-3] SANGAT DIREKOMENDASIKAN untuk memiliki hardware fokus tetap atau EDOF (Extended Depth of Field).
- [7.5/A-1-2] HARUS memiliki kamera utama yang menghadap ke dunia sebagai kamera menghadap dunia dengan ID kamera terendah.
Jika implementasi perangkat Automotive menyertakan setidaknya satu kamera yang menghadap pengguna, untuk kamera tersebut:
- [7.5/A-2-1] Kamera utama yang menghadap pengguna HARUS merupakan kamera yang menghadap pengguna dengan ID kamera terendah.
- MUNGKIN diorientasikan sehingga dimensi panjang kamera sejajar dengan bidang X-Y sumbu sensor otomotif Android.
Jika implementasi perangkat Automotive menyertakan kamera yang dapat diakses melalui
android.hardware.Camera
atauandroid.hardware.camera2
API, implementasi tersebut:- [7.5/A-3-1] HARUS mematuhi persyaratan kamera inti dalam bagian 7.5.
Jika implementasi perangkat Automotive menyertakan kamera yang tidak dapat diakses melalui
android.hardware.Camera
atauandroid.hardware.camera2
API, maka implementasi tersebut:- [7.5/A-4-1] HARUS dapat diakses melalui layanan Extended View System.
Jika implementasi perangkat Automotive menyertakan satu atau beberapa kamera yang dapat diakses melalui Extended View System Service, untuk kamera tersebut, kamera tersebut:
- [7.5/A-5-1] TIDAK BOLEH memutar atau mencerminkan pratinjau kamera secara horizontal.
- [7.5/A-SR-4] SANGAT DIREKOMENDASIKAN untuk memiliki resolusi minimal 1,3 megapiksel.
Jika implementasi perangkat otomotif menyertakan satu atau beberapa kamera yang dapat diakses melalui Extended View System Service dan
android.hardware.Camera
atauandroid.hardware.Camera2
API, maka untuk kamera tersebut, kamera tersebut:- [7.5/A-6-1] HARUS melaporkan ID Kamera yang sama.
Jika implementasi perangkat Automotive menyediakan API kamera eksklusif, implementasi tersebut:
- [7.5/A-7-1] HARUS mengimplementasikan API kamera tersebut menggunakan
android.hardware.camera2
API atau Extended View System API.
- [7.4
-
Lihat revisi
Implementasi perangkat otomotif:
- [3.8/A-0-1] TIDAK BOLEH mengizinkan pengguna sekunder penuh yang bukan pengguna latar depan saat ini untuk meluncurkan aktivitas dan memiliki akses ke UI di layar apa pun.
-
Lihat revisi
Jika implementasi perangkat Automotive mendeklarasikan
android.hardware.microphone
, implementasi tersebut:- [9.8.2/A-1-1] HARUS menampilkan indikator mikrofon saat
aplikasi sedang mengakses data audio dari mikrofon, tetapi tidak saat
mikrofon hanya diakses oleh
HotwordDetectionService
,SOURCE_HOTWORD
,ContentCaptureService
atau aplikasi yang memegang peran yang disebutkan di bagian 9.1 dengan ID CDD [C-4-X]. - [9.8.2/A-1-2] TIDAK BOLEH menyembunyikan indikator mikrofon untuk aplikasi sistem yang memiliki antarmuka pengguna yang terlihat atau interaksi pengguna langsung.
- [9.8.2/A-1-3] HARUS memberikan kemampuan pengguna untuk mengaktifkan/menonaktifkan mikrofon di aplikasi Settings.
Jika implementasi perangkat Automotive mendeklarasikan
android.hardware.camera.any
, implementasi perangkat Automotive:- [9.8.2/A-2-1] HARUS menampilkan indikator kamera saat
aplikasi mengakses data kamera live, tetapi tidak saat kamera hanya
diakses oleh aplikasi yang memiliki peran seperti yang ditentukan
dipanggildi Pasal 9.1 Izin dengan ID CDD [C-4-X][C-3-X].
- [9.8.2/A-2-3] HARUS memberikan kemampuan pengguna untuk mengalihkan kamera di aplikasi Settings.
- [9.8.2/A-2-4] HARUS menampilkan aplikasi Terbaru dan Aktif menggunakan kamera seperti yang ditampilkan
dari
PermissionManager.getIndicatorAppOpUsageData()
, bersama dengan pesan atribusi apa pun yang terkait dengannya.
Jika implementasi perangkat memiliki layar kunci yang aman dan menyertakan satu atau beberapa trust agent, yang mengimplementasikan
TrustAgentService
System API, implementasi tersebut:- [9.11.1/A-1-1] HARUS menantang pengguna untuk salah satu metode autentikasi utama yang direkomendasikan (misalnya: PIN, pola, sandi) lebih sering daripada sekali setiap 336 jam.
- [9.8.2/A-1-1] HARUS menampilkan indikator mikrofon saat
aplikasi sedang mengakses data audio dari mikrofon, tetapi tidak saat
mikrofon hanya diakses oleh
3. Software
3.1 Kompatibilitas API Terkelola:
Lihat revisi
Implementasi perangkat:
- [C-0-8] TIDAK BOLEH mendukung penginstalan aplikasi yang menargetkan API level kurang dari 23.
3.2.3.5 Intent Aplikasi Bersyarat:
Lihat revisi
Jika implementasi perangkat melaporkan
android.hardware.nfc.uicc
atauandroid.hardware.nfc.ese
, implementasi perangkat akan:- [C-19-1] HARUS mengimplementasikan Intent API NfcAdapter.ACTION_TRANSACTION_DETECTED (sebagai “EVT_TRANSACTION” yang ditentukan oleh spesifikasi teknis GSM Association TS.26 - Persyaratan Handset NFC).
3.3.1 Antarmuka Biner Aplikasi:
Lihat revisi
Implementasi perangkat:
- [C-0-12] HARUS mengekspor simbol fungsi untuk simbol fungsi
Vulkan 1.0Vulkan 1.1, serta ekstensiVK_KHR_surface
,VK_KHR_android_surface
,VK_KHR_swapchain
,VK_KHR_maintenance1
, danVK_KHR_get_physical_device_properties2
melalui librarylibvulkan.so
. Perhatikan bahwa meskipun semua simbol HARUS ada, bagian 7.1.4.2 menjelaskan secara lebih mendetail persyaratan saat diharapkan implementasi penuh dari setiap fungsi yang sesuai.
- [C-0-12] HARUS mengekspor simbol fungsi untuk simbol fungsi
-
Lihat revisi
Jika implementasi perangkat menyertakan output layar atau video, implementasi tersebut:
- [C-1-5] HARUS menghasilkan palet tonal warna dinamis menggunakan gaya tema warna
yang dienumerasi dalam dokumentasi
Settings.THEME_CUSTOMIZATION_OVERLAY_PACKAGES
(lihatandroid.theme.customization.theme_styles
), yaituTONAL_SPOT
,VIBRANT
,EXPRESSIVE
,SPRITZ
,RAINBOW
,FRUIT_SALAD
, danMONOCHROMATIC
.
- [C-1-5] HARUS menghasilkan palet tonal warna dinamis menggunakan gaya tema warna
yang dienumerasi dalam dokumentasi
-
Lihat revisi
Jika implementasi perangkat termasuk tombol navigasi fungsi terbaru seperti yang dijelaskan di bagian 7.2.3 mengubah antarmuka, implementasi tersebut:
- [C-1-2] HARUS menerapkan perilaku penyematan ke layar dan menyediakan menu setelan kepada pengguna untuk mengaktifkan/menonaktifkan fitur.
3.9.2 Dukungan Profil Terkelola:
Lihat revisi
Jika implementasi perangkat mendeklarasikan
android.software.managed_users
, implementasi tersebut:- [C-1-10] HARUS memastikan bahwa data screenshot disimpan di penyimpanan
profil kerja saat screenshot diambil dengan
jendela
topActivity
yang memiliki fokus (yang terakhir berinteraksi dengan pengguna di antara semua aktivitas) dan milik aplikasi profil kerja. - [C-1-11] TIDAK BOLEH mengambil konten layar lainnya (kolom sistem, notifikasi, atau konten profil pribadi apa pun) kecuali untuk window/jendela aplikasi profil kerja saat menyimpan screenshot ke profil kerja (untuk memastikan bahwa data profil pribadi tidak disimpan di profil kerja).
- [C-1-10] HARUS memastikan bahwa data screenshot disimpan di penyimpanan
profil kerja saat screenshot diambil dengan
jendela
3.9.5 Device Policy Resolution Framework: Bagian baru
Lihat revisi
Jika implementasi perangkat melaporkan
android.software.device_admin
atauandroid.software.managed_users
, implementasi tersebut:- [C-1-1] HARUS menyelesaikan konflik kebijakan perangkat seperti yang didokumentasikan dalam dokumentasi AOSP.
5. Kompatibilitas Multimedia
-
Lihat revisi
Implementasi perangkat HARUS mendukung encoding encoding gambar berikut:
- [C-0-4] AVIF
- Perangkat harus mendukung
BITRATE_MODE_CQ
dan Profil Dasar Pengukuran.
- Perangkat harus mendukung
- [C-0-4] AVIF
-
Lihat revisi
Implementasi perangkat HARUS mendukung decoding encoding gambar berikut:
[C-0-7] AVIF (Profil Dasar Pengukuran)
-
Lihat revisi
Format/Codec Detail Jenis File/Format Penampung yang Didukung JPEG Dasar+progresif JPEG (.jpg) GIF GIF (.gif) PNG PNG (.png) BMP BMP (.bmp) WebP WebP (.webp) Mentah ARW (.arw), CR2 (.cr2), DNG (.dng), NEF (.nef), NRW (.nrw), ORF (.orf), PEF (.pef), RAF (.raf), RW2 (.rw2), SRW (.srw) HEIF Gambar, Koleksi gambar, Urutan gambar HEIF (.heif), HEIC (.heic) AVIF (Profil Dasar Pengukuran) Gambar, Pengumpulan gambar, Profil Dasar Pengukuran Urutan gambar Penampung HEIF (.avif) -
Lihat revisi
Format/Codec Detail Jenis File/Format Penampung yang akan didukung H.263 - 3GPP (.3gp)
- MPEG-4 (.mp4)
- Matroska (.mkv, khusus dekode)
AVC H.264 Lihat bagian 5.2 dan 5.3 untuk mengetahui detailnya - 3GPP (.3gp)
- MPEG-4 (.mp4)
- MPEG-2 TS (.ts, tidak dapat dicari)
- Matroska (.mkv, khusus dekode)
H.265 HEVC Lihat bagian 5.3 untuk mengetahui detailnya - MPEG-4 (.mp4)
- Matroska (.mkv, khusus dekode)
MPEG-2 Profil Utama - MPEG2-TS (.ts, tidak dapat dicari)
- MPEG-4 (.mp4, dekode saja)
- Matroska (.mkv, khusus dekode)
MPEG-4 SP - 3GPP (.3gp)
- MPEG-4 (.mp4)
- Matroska (.mkv, khusus dekode)
VP8 Lihat bagian 5.2 dan 5.3 untuk mengetahui detailnya - WebM (.webm)
- Matroska (.mkv)
VP9 Lihat bagian 5.3 untuk mengetahui detailnya - WebM (.webm)
- Matroska (.mkv)
AV1 Lihat bagian 5.2 dan bagian 5.3 untuk detailnya - MPEG-4 (.mp4)
- Matroska (.mkv, khusus dekode)
5.1.10. Karakteristik Codec Media:
Lihat revisi
Jika implementasi perangkat mendukung codec video:
- [C-2-1] Semua codec video HARUS memublikasikan data kecepatan frame yang dapat dicapai untuk ukuran berikut jika didukung oleh codec:
SD (kualitas rendah) SD (kualitas tinggi) HD 720p HD 1080p UHD Resolusi video - 176 x 144 piksel (H263, MPEG2, MPEG4)
- 352 x 288 piksel (encoder MPEG4, H263, MPEG2)
- 320 x 180 piksel (VP8, VP8)
- 320 x 240 piksel (lainnya)
- 704 x 576 piksel (H263)
- 640 x 360 piksel (VP8, VP9)
- 640 x 480 piksel (encoder MPEG4)
- 720 x 480 piksel (lainnya, AV1)
- 1408 x 1152 piksel (H263)
- 1280 x 720 piksel (lainnya, AV1)
1920 x 1080 piksel (selain MPEG4, AV1) 3840 x 2160 piksel (HEVC, VP9, AV1) -
Lihat revisi
Jika implementasi perangkat mendukung encoder video apa pun dan menyediakannya untuk aplikasi pihak ketiga, implementasi tersebut:- SEHARUSNYA TIDAK, pada dua jendela geser, lebih dari 15% di atas kecepatan bit antara interval intraframe (I-frame).
- TIDAK BOLEH lebih dari 100% di atas kecepatan bit pada jendela geser berdurasi 1 detik.
Jika implementasi perangkat mendukung encoder video dan menyediakannya untuk aplikasi pihak ketiga, serta menyetel
MediaFormat.KEY_BITRATE_MODE
keBITRATE_MODE_VBR
agar encoder beroperasi dalam mode Kecepatan bit variabel, maka, selama hal tersebut tidak memengaruhi nilai minimum kualitas, kecepatan bit yang dienkode :[C-5-1] HARUSTIDAK BOLEH, di atas satu jendela geser, lebih dari 15% di atas kecepatan bit antara interval intraframe (I-frame).[C-5-2] HARUSSEHARUS TIDAK lebih dari 100% di atas kecepatan bit pada jendela geser selama 1 detik.
Jika implementasi perangkat mendukung encoder video dan menyediakannya untuk aplikasi pihak ketiga serta menyetel
MediaFormat.KEY_BITRATE_MODE
keBITRATE_MODE_CBR
sehingga encoder beroperasi dalam mode kecepatan bit konstan, maka kecepatan bit yang dienkode:[C-6-1] HARUS[C-SR-2] SANGAT DIREKOMENDASIKAN untuk TIDAK lebih dari 15% di atas kecepatan bit target pada jendela geser 1 detik.
-
Lihat revisi
Jika implementasi perangkat mendukung encoder H.263 dan menyediakannya untuk aplikasi pihak ketiga, implementasi tersebut:
- [C-1-1] HARUS mendukung resolusi QCIF (176 x 144) menggunakan Profil Dasar Pengukuran Level 45. Resolusi SQCIF bersifat opsional.
HARUS mendukung kecepatan bit yang dapat dikonfigurasi secara dinamis untuk encoder yang didukung.
-
Lihat revisi
Jika implementasi perangkat mendukung codec H.265, implementasi tersebut:
- [C-1-1] HARUS mendukung Profil Utama Level 3 hingga resolusi 512 x 512.
HARUS mendukung profil encoding HD seperti yang ditunjukkan dalam tabel berikut.- [C-SR-1] SANGAT DIREKOMENDASIKAN untuk mendukung profil SD 720 x 480 dan profil encoding HD seperti yang ditunjukkan pada tabel berikut jika terdapat encode hardware.
5.2.6. AV1: bagian baru
Lihat revisi
Jika implementasi perangkat mendukung codec AV1, implementasi tersebut:
- [C-1-1] HARUS mendukung Profil Utama termasuk konten 8-bit dan 10-bit.
[C-1-2] HARUS memublikasikan data performa, yaitu melaporkan data performa melalui API
getSupportedFrameRatesFor()
ataugetSupportedPerformancePoints()
untuk resolusi yang didukung pada tabel di bawah.[C-1-3] HARUS menerima metadata HDR dan mengeluarkannya ke bitstream
Jika encoder AV1 mengaktifkan akselerasi hardware, encoder tersebut:
- [C-2-1] HARUS mendukung hingga dan termasuk profil encoding HD1080p dari tabel di bawah:
SD HD 720p HD 1080p UHD Resolusi video 720x480 piksel 1280 x 720 px 1920 x 1080 px 3840x2160 piksel Frekuensi gambar video 30 fps 30 fps 30 fps 30 fps Kecepatan bit video 5 Mbps 8 Mbps 16 Mbps 50 Mbps -
Lihat revisi
Jika implementasi perangkat mendukung decoder H.263, implementasi tersebut:
- [C-1-1] HARUS mendukung Profil Dasar Pengukuran Level 30 (resolusi CIF, QCIF, dan SQCIF @ 30fps 384 kbps) dan Level 45 (resolusi QCIF dan SQCIF @ 30 fps 128 kbps).
-
Lihat revisi
Jika implementasi perangkat mendukung codec AV1, implementasi tersebut:- [C-1-1] HARUS mendukung Profil 0 termasuk konten 10-bit.
Jika implementasi perangkat mendukung codec AV1 dan menyediakannya untuk aplikasi pihak ketiga, implementasi tersebut:
- [C-1-1] HARUS mendukung Profil Utama termasuk konten 8-bit dan 10-bit.
Jika implementasi perangkat memberikan dukungan untuk codec AV1 dengan decoder akselerasi hardware, implementasi tersebut:
- [C-2-1] HARUS dapat mendekode setidaknya profil decoding video HD 720p dari
tabel di bawah jika tinggi yang dilaporkan oleh metode
Display.getSupportedModes()
sama atau lebih besar dari 720p. - [C-2-2] HARUS dapat mendekode setidaknya profil decoding video HD 1080p
dari tabel di bawah jika tinggi yang dilaporkan oleh metode
Display.getSupportedModes()
sama atau lebih besar dari 1080p.
SD HD 720p HD 1080p UHD Resolusi video 720x480 piksel 1280 x 720 px 1920 x 1080 px 3840x2160 piksel Frekuensi gambar video 30 fps 30 fps 30 fps 30 fps Kecepatan bit video 5 Mbps 8 Mbps 16 Mbps 50 Mbps Jika implementasi perangkat mendukung Profil HDR melalui Media API, implementasi tersebut:
- [C-3-1] HARUS mendukung ekstraksi dan pembuatan output metadata HDR dari bitstream dan/atau container.
- [C-3-2] HARUS menampilkan konten HDR dengan benar pada layar perangkat atau port output video standar (misalnya, HDMI).
5.4.2. Ambil foto untuk Pengenalan Suara:
Lihat revisi
Jika implementasi perangkat mendeklarasikan
android.hardware.microphone
, implementasi tersebut:- ±BUSAT menyetel sensitivitas input audio sehingga sumber nada sinusoidal 1.000 Hz
diputar pada 90 dB Tingkat Tekanan Suara (SPL) (diukur
pada jarak 30 cm daridi samping mikrofon) menghasilkan respons ideal RMS 2500 dalam rentang 1770 dan 13530 sampel audio mengambang-2 untuk
- ±BUSAT menyetel sensitivitas input audio sehingga sumber nada sinusoidal 1.000 Hz
diputar pada 90 dB Tingkat Tekanan Suara (SPL) (diukur
-
Lihat revisi
Jika implementasi perangkat mendeklarasikan fitur
android.hardware.audio.output
, implementasi tersebut:- [C-1-4] HARUS mendukung efek audio dengan input dan output floating point.
- [C-1-5] HARUS memastikan bahwa efek audio mendukung beberapa saluran hingga jumlah saluran mixer yang juga dikenal sebagai FCC_LIMIT.
-
Lihat revisi
Jika implementasi perangkat mendeklarasikan
android.hardware.audio.output
, implementasi perangkat tersebut SANGAT DIREKOMENDASIKAN untuk memenuhi atau melebihi persyaratan berikut:- [C-SR-4] Stempel waktu output yang ditampilkan oleh
AudioTrack.getTimestamp
dan
AAudioStream_getTimestamp
akurat hingga +/- 1 md.
- [C-SR-4] Latensi bolak-balik yang dihitung berdasarkan stempel waktu input dan output
yang ditampilkan oleh
AAudioStream_getTimestamp
SANGAT DIREKOMENDASIKAN berada dalam waktu 30 mdtk dari latensi dua arah yang diukur untukAAUDIO_PERFORMANCE_MODE_NONE
danAAUDIO_PERFORMANCE_MODE_LOW_LATENCY
untuk speaker, headset berkabel dan nirkabel.
- [C-SR-4] Stempel waktu output yang ditampilkan oleh
AudioTrack.getTimestamp
dan
7. Kompatibilitas Hardware
-
Lihat revisi
Android menyertakan fasilitas yang otomatis menyesuaikan aset aplikasi dan tata letak UI dengan tepat untuk perangkat guna memastikan bahwa aplikasi pihak ketiga berjalan dengan baik di
berbagai konfigurasi hardware.berbagai tampilan dan konfigurasi hardware. Tampilan yang kompatibel dengan Android adalah layar tampilan yang menerapkan semua perilaku dan API yang dijelaskan dalam Developer Android - Ringkasan kompatibilitas layar, bagian ini (7.1) dan subbagiannya, serta semua perilaku khusus jenis perangkat tambahan yang didokumentasikan dalam bagian 2 CDD ini.Pada layar yang kompatibel dengan Android, tempat semua aplikasi pihak ketiga yang kompatibel dengan Android dapat berjalan, implementasi perangkat HARUS menerapkan API dan perilaku ini dengan benar, seperti yang dijelaskan di bagian ini.Mulai persyaratan baru
Implementasi perangkat:
- [C-0-1] Secara default, HARUS merender aplikasi pihak ketiga hanya ke layar yang kompatibel dengan Android.
Unit yang dirujuk oleh persyaratan di bagian ini didefinisikan sebagai berikut:
- ukuran diagonal fisik. Jarak dalam inci antara dua sudut yang berlawanan dari bagian layar yang diterangi.
titik per inci (dpi)kepadatan. Jumlah piksel yang dicakup oleh rentang horizontal atau vertikal linear berukuran 1 inci, yang dinyatakan sebagai piksel per inci (ppi atau dpi). Jika nilaidpippi dan dpi dicantumkan, dpi horizontal dan vertikal harus berada dalam rentang yang tercantum.- rasio aspek. Rasio piksel dimensi yang lebih panjang terhadap dimensi layar yang lebih pendek. Misalnya, tampilan 480x854 piksel akan menjadi 854/480 = 1,779, atau kira-kira “16:9”.
- piksel kepadatan mandiri (dp).
Unit piksel virtualA dinormalisasi kelayar 160 dpikepadatan layar 160. Untuk d kepadatan tertentu, dan sejumlah piksel p, jumlah dp piksel kepadatan mandiri, dihitung sebagai:piksel = dps * (kepadatan/160)dp = (160 / d) * p .
7.1.1.1 Ukuran dan Bentuk Layar:
Lihat revisi
Jika implementasi perangkat mendukung layar yang mendukung
UI_MODE_TYPE_NORMAL
konfigurasi ukuran danmenyertakan layar yang kompatibel dengan Androidgunakan tampilan fisik dengan sudut membulat untuk merender layar ini, layar tersebut:- [C-1-1] HARUS memastikan bahwa minimal salah satu persyaratan berikut terpenuhi untuk setiap tampilan tersebut:
- Radius sudut lengkung kurang dari atau sama dengan 38 dp.
Saat kotak berukuran 15 dp x 15 dp ditambatkan di setiap sudut tampilan logika, setidaknya satu piksel dari setiap kotak akan terlihat di layar.
HARUS menyertakan kemampuan pengguna untuk beralih ke mode tampilan dengan sudut persegi panjang.
Mulai persyaratan baru
Jika implementasi perangkat hanya mampu melakukan konfigurasi keyboard
NO_KEYS
, dan bermaksud melaporkan dukungan untuk konfigurasi mode UIUI_MODE_TYPE_NORMAL
, implementasi tersebut:- [C-4-1] HARUS memiliki ukuran tata letak, tidak termasuk potongan layar, minimal 596 dp x 384 dp atau lebih.
Jika implementasi perangkat menyertakan layar kompatibel dengan Android yang dapat dilipat, atau menyertakan engsel lipat di antara beberapa panel layar dan membuat layar tersebut tersedia untuk merender aplikasi pihak ketiga, implementasi tersebut:
- [C-2-1] HARUS menerapkan versi stabil terbaru API ekstensi atau versi stabil API file bantuan untuk digunakan oleh library Jetpack Windows Manager.
Jika implementasi perangkat menyertakan layar kompatibel dengan Android yang dapat dilipat, atau menyertakan engsel lipat di antara beberapa panel layar dan jika engsel atau lipatan melintasi jendela aplikasi layar penuh, implementasi tersebut:
- [C-3-1] HARUS melaporkan posisi, batas, dan status engsel atau lipat melalui ekstensi atau API file bantuan ke aplikasi.
Jika implementasi perangkat menyertakan satu atau beberapa area tampilan yang kompatibel dengan Android yang dapat dilipat, atau menyertakan engsel lipat di antara beberapa area panel layar yang kompatibel dengan Android dan membuat area tampilan tersebut tersedia untuk aplikasi, maka:
- [C-4-1] HARUS menerapkan versi API level Ekstensi Window Manager yang benar seperti yang dijelaskan dalam dokumentasi mendatang.
7.1.1.2. Rasio Aspek Layar: dihapus
-
Lihat revisi
Penerapan Perangkat:
- [C-0-1]
Secara default, implementasi perangkatTIDAK BOLEH melaporkanhanyasalah satu kepadatan framework Android yang tercantum diDisplayMetrics
melaluiDENSITY_DEVICE_STABLE
API dan nilai ini harus berupa nilai statis untuk setiap tampilan fisikTIDAK BOLEH berubah kapan saja; namun,ukuran perangkat yang berbedaDisplayMetrics.density
- Implementasi perangkat HARUS menentukan kepadatan framework Android standar yang secara numerik paling mendekati kepadatan fisik layar, kecuali jika kepadatan logis tersebut mendorong ukuran layar yang dilaporkan di bawah batas minimum yang didukung. Jika kepadatan framework Android standar yang secara numerik paling dekat dengan kepadatan fisik menghasilkan ukuran layar yang lebih kecil dari ukuran layar terkecil yang didukung (lebar 320 dp), implementasi perangkat SEHARUS melaporkan kepadatan framework Android standar terendah berikutnya.
Mulai persyaratan baru
- HARUS tentukan kepadatan framework Android standar yang secara numerik paling mendekati kepadatan fisik layar, atau nilai yang akan dipetakan ke pengukuran ruang pandang sudut yang setara dengan perangkat genggam.
Jika implementasi perangkat menyediakan
adaaffordance untuk mengubah ukuran layar perangkat , ukuran tersebut:- [C-1-1]
Ukuran layar TIDAK BOLEH diskalakan apa punTIDAK BOLEH menskalakan layar yang lebih besar dari 1,5 kaliDENSITY_DEVICE_STABLE
kepadatan nativeatau menghasilkan dimensi layar minimum efektif yang lebih kecil dari 320 dp (setara dengan penentu resource sw320dp), mana saja yang lebih dulu. - [C-1-2]
Ukuran tampilan TIDAK BOLEH diskalakan apa punTIDAK BOLEH menskalakan layar yang lebih kecil dari 0,85 kali lipatkepadatan nativeDENSITY_DEVICE_STABLE
.
- [C-0-1]
-
Lihat revisi
Jika implementasi perangkat menyertakan dukungan untuk Vulkan
1.0 atau yang lebih tinggi, implementasi tersebut:[C-1-3] HARUS sepenuhnya menerapkan
Vulkan 1.0Vulkan 1.1 API untuk setiapVkPhysicalDevice
yang dienumerasi.[C-1-5] TIDAK BOLEH menghitung lapisan yang disediakan oleh library di luar paket aplikasi, atau memberikan cara lain untuk melacak atau mengintersepsi Vulkan API, kecuali jika aplikasi tersebut memiliki atribut
android:debuggable
yang ditetapkan sebagaitrue
atau metadatacom.android.graphics.injectLayers.enable
yang ditetapkan ketrue
.
- HARUS mendukung
VkPhysicalDeviceProtectedMemoryFeatures
danVK_EXT_global_priority
.
- [C-1-13] HARUS memenuhi persyaratan yang ditentukan oleh profil Dasar Pengukuran Android 2021.
[C-SR-5] SANGAT DIREKOMENDASIKAN untuk mendukung
VkPhysicalDeviceProtectedMemoryFeatures.protectedMemory
danVK_EXT_global_priority
.[C-SR-6] SANGAT DIREKOMENDASIKAN untuk menggunakan
SkiaVk
dengan HWUI.
Jika implementasi perangkat menyertakan dukungan untuk Vulkan 1.1 dan mendeklarasikan salah satu flag fitur Vulkan yang dijelaskan di sini , implementasi tersebut:
- [C-SR-7] SANGAT DIREKOMENDASIKAN untuk menyediakan ekstensi
VK_KHR_external_fence_fd
bagi aplikasi pihak ketiga serta memungkinkan aplikasi mengekspor payload fence ke dan mengimpor payload fence dari deskripsi file POSIX seperti yang dijelaskan di sini.
-
Lihat revisi
Jika implementasi perangkat memiliki beberapa sensor biometrik, implementasi tersebut:
[C-7-1] HARUS, saat biometrik sedang terkunci (yaitu, biometrik dinonaktifkan hingga pengguna membuka kunci dengan autentikasi utama) atau penguncian terikat waktu (yaitu, biometrik dinonaktifkan sementara sampai pengguna menunggu interval waktu) karena terlalu banyak upaya yang gagal, juga akan mengunci semua biometrik lain dari kelas biometrik yang lebih rendah. Dalam kasus penguncian terikat waktu, waktu backoff untuk verifikasi biometrik HARUS berupa waktu backoff maksimum dari semua biometrik dalam penguncian terikat waktu.
[C-SR-12] SANGAT DIREKOMENDASIKAN, saat biometrik dinonaktifkan (yaitu, biometrik dinonaktifkan hingga pengguna membuka kunci dengan autentikasi utama) atau penguncian terikat waktu (yaitu, biometrik dinonaktifkan untuk sementara hingga pengguna menunggu interval waktu) karena terlalu banyak upaya yang gagal, untuk juga mengunci semua biometrik lain dari class biometrik yang sama. Dalam kasus penguncian terikat waktu, waktu backoff untuk verifikasi biometrik SANGAT DIREKOMENDASIKAN sebagai waktu backoff maksimum dari semua biometrik dalam penguncian terikat waktu.
[C-7-2] HARUS menantang pengguna untuk autentikasi utama yang direkomendasikan (misalnya: PIN, pola, sandi) untuk mereset penghitung penguncian agar biometrik terkunci. Biometrik Kelas 3 DAPAT diizinkan untuk mereset penghitung penguncian untuk biometrik terkunci dari class yang sama atau lebih rendah. Biometrik Kelas 2 atau Kelas 1 TIDAK BOLEH diizinkan untuk menyelesaikan operasi penguncian reset untuk semua biometrik.
Jika implementasi perangkat ingin memperlakukan sensor biometrik sebagai Class 1 (sebelumnya Kemudahan), fungsi tersebut:
[C-1-12] HARUS memiliki tingkat penerimaan spoof dan penipu yang tidak lebih tinggi dari 40% spesies instrumen serangan presentasi (PAI), seperti yang diukur oleh Protokol Pengujian Biometrik Android.
[C-SR-13] SANGAT DIREKOMENDASIKAN untuk memiliki tingkat penerimaan spoof dan penipu yang tidak lebih dari 30% spesies serangan per presentasi (PAI), seperti yang diukur oleh Protokol Pengujian Biometrik Android.
[C-SR-14] SANGAT DIREKOMENDASIKAN untuk mengungkapkan kelas biometrik sensor biometrik dan risiko terkait jika diaktifkan.
[C-SR-17] SANGAT DIREKOMENDASIKAN untuk mengimplementasikan antarmuka AIDL baru (seperti,
IFace.aidl
danIFingerprint.aidl
).
Jika implementasi perangkat ingin memperlakukan sensor biometrik sebagai Class 2 (sebelumnya Lemah), sensor tersebut:
- [C-SR-15] SANGAT DIREKOMENDASIKAN untuk memiliki tingkat penerimaan spoofing dan penipu yang tidak lebih tinggi dari 20% spesies instrumen serangan presentasi (PAI), seperti yang diukur oleh Protokol Pengujian Biometrik Android.
- [C-2-3] HARUS melakukan
pencocokan biometrik di lingkungan eksekusi yang terisolasi di luar ruang kernel
atau pengguna Android, seperti Trusted Execution Environment (TEE),
ataupada chip dengan saluran aman ke lingkungan eksekusi yang terisolasi atau di Protected Virtual Machine yang memenuhi persyaratan dalam Pasal 9.17. - [C-2-4] HARUS memiliki semua data yang dapat diidentifikasi yang dienkripsi dan diautentikasi secara kriptografis sehingga tidak dapat diperoleh, dibaca, atau diubah di luar lingkungan eksekusi yang terisolasi atau chip dengan saluran aman ke lingkungan eksekusi terpisah seperti yang didokumentasikan dalam panduan implementasi di situs Proyek Open Source Android atau Mesin Virtual Terlindungi yang dikontrol oleh hypervisor yang memenuhi persyaratan dalam Pasal 9.17.
- [C-2-5] Untuk biometrik berbasis kamera, saat autentikasi
atau pendaftaran berbasis biometrik sedang berlangsung:
- HARUS mengoperasikan kamera dalam mode yang mencegah frame kamera dibaca atau diubah di luar lingkungan eksekusi yang terisolasi, atau chip dengan saluran aman ke lingkungan eksekusi yang terisolasi atau Protected Virtual Machine yang dikontrol oleh hypervisor yang memenuhi persyaratan dalam Pasal 9.17.
- Untuk solusi kamera tunggal RGB, frame kamera DAPAT dibaca di luar lingkungan eksekusi yang terisolasi untuk mendukung operasi seperti pratinjau untuk pendaftaran, tetapi TIDAK BOLEH diubah.
- [C-2-7] TIDAK BOLEH mengizinkan akses tidak terenkripsi ke data biometrik yang dapat diidentifikasi atau data apa pun yang berasal darinya (seperti embedding) ke Pemroses Aplikasi di luar konteks TEE atau Protected Virtual Machine yang dikontrol oleh hypervisor yang memenuhi persyaratan dalam Pasal 9.17. Perangkat yang diupgrade yang diluncurkan di Android versi 9 atau yang lebih lama tidak dikecualikan dari C-2-7.
Jika implementasi perangkat ingin memperlakukan sensor biometrik sebagai Class 3 (sebelumnya Strong), sensor tersebut:
- [C-SR-16] SANGAT DIREKOMENDASIKAN untuk memiliki tingkat penerimaan spoof dan penipu yang tidak lebih dari 7% spesies serangan per presentasi (PAI), seperti yang diukur oleh Protokol Pengujian Biometrik Android.
7.3.13. IEEE 802.1.15.4 (UWB):
Lihat revisi
Jika implementasi perangkat menyertakan dukungan untuk 802.1.15.4 dan mengekspos fungsionalitas ke aplikasi pihak ketiga, implementasi tersebut:
- [C-1-2] HARUS melaporkan tombol fitur hardware
android.hardware.uwb
. - [C-1-3] HARUS mendukung semua set konfigurasi berikut (kombinasi
parameter FIRA UCI yang telah ditentukan)
yang ditentukan dalam implementasi AOSP.
CONFIG_ID_1
: RentangSTATIC STS DS-TWR
unicast yang ditentukan FiRa, mode ditangguhkan, interval rentang 240 md.CONFIG_ID_2
: Mode rentangSTATIC STS DS-TWR
one-to-many yang ditentukan FiRa, dengan interval rentang 200 md. Kasus penggunaan umum: smartphone berinteraksi dengan banyak perangkat smart.CONFIG_ID_3
: Sama sepertiCONFIG_ID_1
, tetapi data Sudut kedatangan (AoA) tidak dilaporkan.CONFIG_ID_4
: Sama sepertiCONFIG_ID_1
, tetapi mode keamanan P-STS diaktifkan.CONFIG_ID_5
: Sama sepertiCONFIG_ID_2
, tetapi mode keamanan P-STS diaktifkan.CONFIG_ID_6
: Sama sepertiCONFIG_ID_3
, tetapi mode keamanan P-STS diaktifkan.CONFIG_ID_7
: Sama sepertiCONFIG_ID_2
, kecuali mode kunci kontrol individu P-STS diaktifkan.
- [C-1-4] HARUS menyediakan affordance pengguna agar pengguna dapat mengaktifkan/menonaktifkan status aktif/nonaktif radio UWB.
- [C-1-5] HARUS memberlakukan bahwa aplikasi yang menggunakan radio UWB memiliki izin
UWB_RANGING
(di bawah grup izinNEARBY_DEVICES
).
Lulus pengujian kesesuaian dan sertifikasi relevan yang ditentukan oleh organisasi standar, termasuk FIRA, CCC, dan CSA akan membantu memastikan 802.1.15.4 berfungsi dengan benar.
- [C-1-2] HARUS melaporkan tombol fitur hardware
-
Lihat revisi
“Telepon” seperti yang digunakan oleh Android API dan dokumen ini secara khusus merujuk pada hardware yang terkait dengan melakukan panggilan suara dan mengirim pesan SMS , atau membuat data seluler melalui jaringan seluler (misalnya, GSM, CDMA, LTE, NR) GSM atau CDMA. Perangkat yang mendukung “Telepon” dapat memilih untuk menawarkan beberapa atau semua layanan panggilan, pesan, dan data yang sesuai dengan produk tersebut.
melalui jaringan GSM atau CDMA. Meskipun panggilan suara ini mungkin atau tidak dialihkan,panggilan tersebut ditujukan untuk tujuan Android yang dianggap tidak bergantung pada konektivitas data apa pun yang dapat diimplementasikan menggunakan jaringan yang sama. Dengan kata lain,API dan fungsi "telepon" Android secara khusus merujuk ke panggilan suara dan SMS. Misalnya, implementasi perangkat yang tidak dapat melakukan panggilan atau mengirim/menerima pesan SMS tidak dianggap sebagai perangkat telepon, terlepas dari apakah aplikasi tersebut menggunakan jaringan seluler untuk konektivitas data atau tidak. -
Lihat revisi
Jika implementasi perangkat menyertakan dukungan untuk 802.11 dan menampilkan fungsinya ke aplikasi pihak ketiga, implementasi tersebut:
- [C-1-4] HARUS mendukung multicast DNS (mDNS) dan TIDAK BOLEH memfilter paket mDNS
(224.0.0.251 atau ff02::fb)
kapan saja operasi, termasuk saat layar
tidak dalam status aktif, kecuali menghapus atau memfilter paket ini
diperlukan agar tetap berada dalam rentang konsumsi daya yang diwajibkan oleh peraturan
yang berlaku untuk target pasar.
Untuk implementasi perangkat Android Televisi, bahkan saat dalam status daya standby.
- [C-1-4] HARUS mendukung multicast DNS (mDNS) dan TIDAK BOLEH memfilter paket mDNS
(224.0.0.251 atau ff02::fb)
kapan saja operasi, termasuk saat layar
tidak dalam status aktif, kecuali menghapus atau memfilter paket ini
diperlukan agar tetap berada dalam rentang konsumsi daya yang diwajibkan oleh peraturan
yang berlaku untuk target pasar.
-
Lihat revisi
Jika implementasi perangkat mendeklarasikan FEATURE_BLUETOOTH_LE, implementasi tersebut:
- [C-SR-2] SANGAT DIREKOMENDASIKAN untuk mengukur dan mengompensasi offset Rx guna
memastikan RSSI BLE median adalah -60 dBm +/-10 dB pada jarak 1 m dari
perangkat referensi yang mentransmisikan pada
ADVERTISE_TX_POWER_HIGH
, dengan perangkat diorientasikan sedemikian rupa sehingga berada pada 'bidang paralel' dengan layar menghadap ke arah yang sama. - [C-SR-3] SANGAT DIREKOMENDASIKAN untuk mengukur dan mengompensasi offset Tx guna
memastikan RSSI BLE median adalah -60 dBm +/-10 dB saat memindai dari perangkat referensi
yang diposisikan pada jarak 1 m dan mentransmisikan pada
ADVERTISE_TX_POWER_HIGH
, dengan orientasi perangkat sehingga berada pada 'bidang paralel' dengan layar menghadap ke arah yang sama.
- [C-10-3] HARUS mengukur dan mengompensasi offset Rx untuk
memastikan RSSI BLE median adalah -55dBm +/-10 dB pada jarak 1 m dari
perangkat referensi yang melakukan transmisi pada
ADVERTISE_TX_POWER_HIGH
. - [C-10-4] HARUS mengukur dan mengompensasi offset Tx untuk
memastikan RSSI BLE median adalah -55 dBm +/-10 dB saat memindai dari perangkat
referensi yang diposisikan pada jarak 1 m dan mentransmisikan pada
ADVERTISE_TX_POWER_HIGH
.
Jika implementasi perangkat mendukung Bluetooth versi 5.0, implementasi tersebut:
- [C-SR-4] SANGAT DIREKOMENDASIKAN untuk memberikan dukungan bagi:
- LE 2 JT PHY
- LE Codec PHY
- Ekstensi LE Advertising
- Iklan berkala
- Minimal 10 set iklan
- Minimal 8 koneksi serentak LE. Setiap koneksi dapat memiliki peran topologi koneksi.
- Privasi Lapisan LE Link
- Ukuran "daftar penyelesaian" minimal 8 entri
- [C-SR-2] SANGAT DIREKOMENDASIKAN untuk mengukur dan mengompensasi offset Rx guna
memastikan RSSI BLE median adalah -60 dBm +/-10 dB pada jarak 1 m dari
perangkat referensi yang mentransmisikan pada
-
Lihat revisi
- [C-1-7] HARUS memastikan bahwa median pengukuran jarak pada jarak 1 m
dari perangkat referensi adalah dalam jarak [0,75 m, 1,25 m], dengan jarak kebenaran dasar
diukur dari tepi atas DUT.
diangkat menghadap ke atas dan dimiringkan 45 derajat.
- [C-1-7] HARUS memastikan bahwa median pengukuran jarak pada jarak 1 m
dari perangkat referensi adalah dalam jarak [0,75 m, 1,25 m], dengan jarak kebenaran dasar
diukur dari tepi atas DUT.
-
Lihat revisi
Kamera belakang adalah kamera yang terletak di sisi perangkat berlawanan dengan layar; yaitu, kamera merekam adegan di sisi jauh perangkat, seperti kamera tradisional.
Kamera belakang adalah kamera hadap dunia yang mengambil gambar adegan di sisi jauh perangkat, seperti kamera tradisional; pada perangkat genggam, yaitu kamera yang terletak di sisi perangkat berlawanan dengan layar.
-
Lihat revisi
Kamera depan adalah kamera yang terletak di sisi perangkat yang sama dengan layar; yaitu, kamera yang biasanya digunakan untuk mengambil gambar pengguna, seperti untuk konferensi video dan aplikasi serupa.
Kamera depan adalah kamera yang menghadap pengguna yang biasanya digunakan untuk mengambil gambar pengguna, seperti untuk konferensi video dan aplikasi serupa; pada perangkat genggam, yaitu kamera yang terletak di sisi perangkat yang sama dengan layar.
-
Lihat revisi
Kamera eksternal adalah kamera yang dapat dipasang atau dilepas secara fisik dari implementasi perangkat kapan saja dan dapat menghadap ke segala arah, seperti kamera USB.
-
Lihat revisi
Implementasi perangkat HARUS menerapkan perilaku berikut untuk API terkait kamera, untuk semua kamera yang tersedia. Implementasi perangkat:
- [C-SR-1] Untuk perangkat dengan beberapa kamera RGB yang
dekat dan menghadap ke arah yang sama,
SANGAT DIREKOMENDASIKAN untuk mendukung perangkat kamera logis yang mencantumkan
kemampuan
CameraMetadata.REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA
, yang terdiri dari semua kamera RGB yang menghadap ke arah tersebut sebagai sub-perangkat fisik.
- [C-SR-1] Untuk perangkat dengan beberapa kamera RGB yang
dekat dan menghadap ke arah yang sama,
SANGAT DIREKOMENDASIKAN untuk mendukung perangkat kamera logis yang mencantumkan
kemampuan
-
Lihat revisi
Perangkat yang memenuhi semua kriteria berikut akan dikecualikan dari persyaratan di atas:
- Implementasi perangkat yang tidak dapat dirotasi oleh pengguna seperti perangkat otomotif.
-
Lihat revisi
Perangkat yang ditujukan untuk digenggam atau dipakai dapat mencakup aktuator haptik untuk tujuan umum, yang tersedia bagi aplikasi untuk berbagai tujuan, termasuk menarik perhatian melalui nada dering, alarm, notifikasi, serta respons sentuh umum.
Jika implementasi perangkat TIDAK menyertakan aktuator haptik tujuan umum tersebut, implementasi perangkat akan:
- [7.10/C] HARUS menampilkan nilai salah untuk
Vibrator.hasVibrator()
.
Jika implementasi perangkat TIDAK menyertakan setidaknya satu aktuator haptic tujuan umum tersebut, implementasi tersebut:
- [C-1-1] HARUS menampilkan true untuk
Vibrator.hasVibrator()
. - TIDAK BOLEH menggunakan aktuator haptik (vibrator) massa berputar eksentrik (ERM).
- HARUS mengimplementasikan semua konstanta publik untuk haptic yang jelas
di
android.view.HapticFeedbackConstants
yaitu (CLOCK_TICK
,CONTEXT_CLICK
,KEYBOARD_PRESS
,KEYBOARD_RELEASE
,KEYBOARD_TAP
,LONG_PRESS
,TEXT_HANDLE_MOVE
,VIRTUAL_KEY
,VIRTUAL_KEY_RELEASE
,CONFIRM
,REJECT
,GESTURE_START
danGESTURE_END
). - SHOULD
harus mengimplementasikan semua konstanta publik untuk haptic yang jelas
di
android.os.VibrationEffect
, yaitu (EFFECT_TICK
,EFFECT_CLICK
,EFFECT_HEAVY_CLICK
, danEFFECT_DOUBLE_CLICK
) dan semua konstantaPRIMITIVE_*
publik yang layak untuk rich haptics, diandroid.os.VibrationEffect.Composition
, (CLICK
,TICK
,LOW_TICK
, {18/frekuensi}, {19/function,}LOW_TICK
QUICK_FALL
QUICK_RISE
SLOW_RISE
SPIN
SPIN
THUD
- HARUS mengikuti panduan untuk memetakan konstanta publik
dalam
android.view.HapticFeedbackConstants
ke konstantaandroid.os.VibrationEffect
yang direkomendasikan, dengan hubungan amplitudo yang sesuai. - HARUS menggunakan pemetaan haptic yang ditautkan ini.
- HARUS mengikuti penilaian kualitas
untuk
createOneShot()
dancreateWaveform()
API. - HARUS memverifikasi bahwa hasil
android.os.Vibrator.hasAmplitudeControl()
API publik mencerminkan dengan benar kemampuan vibrator-nya. - HARUS memverifikasi kemampuan untuk skalabilitas amplitudo dengan menjalankan
android.os.Vibrator.hasAmplitudeControl()
.
Jika implementasi perangkat mengikuti pemetaan konstanta haptic, implementasi tersebut:
- HARUS memverifikasi status penerapan dengan menjalankan API
android.os.Vibrator.areAllEffectsSupported()
danandroid.os.Vibrator.arePrimitivesSupported()
. - HARUS melakukan penilaian kualitas untuk konstanta haptik.
- HARUS memverifikasi dan memperbarui konfigurasi penggantian untuk primitif yang tidak didukung, jika diperlukan, seperti yang dijelaskan dalam panduan penerapan untuk konstanta.
- HARUS memberikan dukungan penggantian untuk mengurangi risiko kegagalan seperti yang dijelaskan di sini.
Lihat Pasal 2.2.1 untuk mengetahui persyaratan khusus perangkat.
- [7.10/C] HARUS menampilkan nilai salah untuk
9. Kompatibilitas Model Keamanan
-
Lihat revisi
Implementasi perangkat:
- [C-0-4] HARUS memiliki satu dan hanya satu implementasi untuk kedua antarmuka pengguna.
Jika implementasi perangkat telah menginstal paket apa pun yang memiliki peran System UI Intelligence, System Ambient Audio Intelligence, System Audio Intelligence, System Notification Intelligence, System Text Intelligence, atau System Visual Intelligence, maka paket tersebut:
- [C-4-1] HARUS memenuhi semua persyaratan yang diuraikan untuk implementasi perangkat di
bagian
"9.8.6 Content Capture""9.8.6 OS-level data dan standby data serta 9.8.15 Implementasi API dengan sandbox".
- [C-4-2] TIDAK BOLEH memiliki izin android.permission.INTERNET. Tindakan ini lebih ketat daripada yang SANGAT DIREKOMENDASIKAN sebagaimana tercantum dalam pasal 9.8.6.
- [C-4-3] TIDAK BOLEH mengikat ke aplikasi lain, kecuali untuk aplikasi sistem berikut: Bluetooth, Kontak, Media, Telepon, SystemUI, dan komponen yang menyediakan Internet API. Tindakan ini lebih ketat daripada yang SANGAT DIREKOMENDASIKAN sebagaimana tercantum dalam pasal 9.8.6.
Jika implementasi perangkat menyertakan aplikasi default untuk mendukung
VoiceInteractionService
, implementasi perangkat tersebut:- [C-5-1] TIDAK BOLEH memberikan
ACCESS_FINE_LOCATION
sebagai default untuk aplikasi tersebut.
-
Lihat revisi
Jika implementasi perangkat membuat profil pengguna tambahan yang dibahas di atas, implementasi perangkat tersebut:
- [C-4-5] HARUS membedakan ikon aplikasi dual instance secara visual saat ikon tersebut ditampilkan kepada pengguna.
- [C-4-6] HARUS memberikan kemampuan pengguna untuk menghapus seluruh data profil clone.
- [C-4-7] HARUS meng-uninstal semua aplikasi Clone, menghapus direktori data aplikasi pribadi dan kontennya, serta menghapus data profil Clone, jika pengguna memilih untuk menghapus seluruh data profil Clone.
- HARUS meminta pengguna untuk menghapus seluruh data Profil Clone saat aplikasi clone terakhir dihapus.
- [C-4-8] HARUS memberi tahu pengguna bahwa data aplikasi akan dihapus jika aplikasi clone di-uninstal, atau memberikan opsi kepada pengguna untuk menyimpan data aplikasi saat aplikasi di-uninstal dari perangkat.
- [C-4-9] HARUS menghapus direktori data aplikasi pribadi dan kontennya, jika pengguna memilih untuk menghapus data selama uninstal.
[C-4-1] HARUS mengizinkan intent di bawah yang berasal dari profil tambahan untuk ditangani oleh aplikasi pengguna utama di perangkat:
Intent.ACTION_VIEW
Intent.ACTION_SENDTO
Intent.ACTION_SEND
Intent.ACTION_EDIT
Intent.ACTION_INSERT
Intent.ACTION_INSERT_OR_EDIT
Intent.ACTION_SEND_MULTIPLE
Intent.ACTION_PICK
Intent.ACTION_GET_CONTENT
MediaStore.ACTION_IMAGE_CAPTURE
MediaStore.ACTION_VIDEO_CAPTURE
[C-4-2] HARUS mewarisi semua pembatasan pengguna kebijakan perangkat dan pembatasan non-pengguna yang dipilih(daftar di bawah) yang diterapkan pada pengguna utama perangkat ke profil pengguna tambahan ini.
[C-4-3] HARUS hanya mengizinkan penulisan kontak dari profil tambahan ini melalui intent berikut:
[C-4-4] TIDAK BOLEH menjalankan sinkronisasi kontak untuk aplikasi yang berjalan di profil pengguna tambahan ini.
- [C-4-14] HARUS memiliki izin dan pengelolaan penyimpanan terpisah untuk aplikasi yang berjalan di profil tambahan ini
- [C-4-5] Hanya boleh mengizinkan aplikasi di profil tambahan yang memiliki aktivitas peluncur untuk mengakses kontak yang sudah dapat diakses oleh profil pengguna induk.
-
Lihat revisi
Teknologi Keamanan Memori adalah teknologi yang mengurangi setidaknya class bug berikut dengan probabilitas tinggi (> 90%) dalam aplikasi yang menggunakan opsi manifes
android:memtagMode
:- luapan buffer heap
- gunakan setelah tersedia
- bebas ganda
- bebas liar (bebas dari pointer non-malloc)
Implementasi perangkat:
- [C-SR-15] SANGAT DIREKOMENDASIKAN untuk menetapkan
ro.arm64.memtag.bootctl_supported
.
Jika implementasi perangkat menetapkan properti sistem
ro.arm64.memtag.bootctl_supported
ke benar (true), implementasi tersebut:[C-3-1] HARUS mengizinkan properti sistem
arm64.memtag.bootctl
untuk menerima daftar yang dipisahkan koma dari nilai berikut, dengan efek yang diinginkan diterapkan pada mulai ulang berikutnya:memtag
: teknologi Keamanan Memori seperti yang dijelaskan di atas diaktifkanmemtag-once
: teknologi Keamanan Memori seperti yang dijelaskan di atas diaktifkan sementara, dan otomatis dinonaktifkan saat, reboot berikutnyamemtag-off
: teknologi Keamanan Memori seperti yang dijelaskan di atas dinonaktifkan
[C-3-2] HARUS mengizinkan pengguna shell menyetel
arm64.memtag.bootctl
.[C-3-3] HARUS mengizinkan semua proses membaca
arm64.memtag.bootctl
.[C-3-4] HARUS menetapkan
arm64.memtag.bootctl
ke status yang diminta saat ini saat booting, properti juga HARUS mengupdate properti, jika implementasi perangkat memungkinkan untuk mengubah status tanpa mengubah properti sistem.[C-SR-16] SANGAT DIREKOMENDASIKAN untuk menampilkan Setelan Developer yang menyetel memtag-sekali dan memulai ulang perangkat. Dengan bootloader yang kompatibel, Project Open Source Android memenuhi persyaratan di atas melalui protokol bootloader MTE.
- [C-SR-17] SANGAT DIREKOMENDASIKAN untuk menampilkan Setelan di menu
Setelan Keamanan yang memungkinkan pengguna mengaktifkan
memtag
.
-
Lihat revisi
Implementasi perangkat:
- [C-0-2] HARUS menampilkan peringatan pengguna
dan mendapatkan izin pengguna eksplisit yang memungkinkan
informasi sensitif apa pun yang ditampilkan di layar pengguna dapat
ditangkap
diaktifkan yang menyertakan pesan yang sama persis dengan AOSPkapan punsetiap kali setiap kali sesi untuk merekam layarpemancaran atau perekaman layar{1010 ,diaktifkanMediaProjection.createVirtualDisplay()
VirtualDeviceManager.createVirtualDisplay()
TIDAK BOLEH memberi pengguna kemampuan untuk menonaktifkan tampilan izin pengguna di masa mendatang.
[C-SR-1] SANGAT DIREKOMENDASIKAN untuk menampilkan peringatan pengguna yang sama persis dengan yang diimplementasikan dalam AOSP, tetapi DAPAT diubah selama pesan tersebut dengan jelas memperingatkan pengguna bahwa setiap informasi sensitif di layar pengguna telah diambil.
[C-0-4] TIDAK BOLEH memberi pengguna affordance untuk menonaktifkan perintah izin pengguna di masa mendatang untuk merekam layar, kecuali jika sesi dimulai oleh aplikasi sistem yang telah diizinkan pengguna untuk
associate()
denganandroid.app.role.COMPANION_DEVICE_APP_STREAMING
atau profil perangkatandroid.app.role.COMPANION_DEVICE_NEARBY_DEVICE_STREAMING
.
- [C-0-2] HARUS menampilkan peringatan pengguna
dan mendapatkan izin pengguna eksplisit yang memungkinkan
informasi sensitif apa pun yang ditampilkan di layar pengguna dapat
ditangkap
9.8.6. Data tingkat OS dan data standby: Bagian ini diganti namanya dari Pengambilan Konten dan Penelusuran Aplikasi menjadi data tingkat OS dan data standby.
Lihat revisi
Android, melalui API Sistem
, mendukung mekanisme implementasi perangkat untuk menangkapContentCaptureService
,AugmentedAutofillService
,AppSearchGlobalManager.query
, atau dengan cara eksklusif lainnyainteraksi data aplikasi antara aplikasi dan data sensitifpengguna berikut:- Layar atau data lain apa pun yang dikirim melalui
AugmentedAutofillService
ke sistem. - Semua layar atau data lain yang dapat diakses melalui
Content Capture
API. - Semua layar atau data lain yang dapat diakses melalui
FieldClassificationService
API - Data aplikasi apa pun yang diteruskan ke sistem melalui
AppSearchManager
API dan dapat diakses melaluiAppSearchGlobalManager.query
.
- Peristiwa lain yang disediakan aplikasi ke sistem melalui API
Content Capture
atau APIAppSearchManager
atau API Android dan eksklusif yang memiliki kemampuan serupa.
- Data audio yang diperoleh sebagai hasil penggunaan
SpeechRecognizer#onDeviceSpeechRecognizer()
oleh Implementasi Pengenal Ucapan. - Data audio yang diperoleh di latar belakang (terus-menerus) melalui
AudioRecord
,SoundTrigger
, atau API Audio lainnya, dan tidak menghasilkan indikator yang terlihat oleh pengguna - Data kamera yang diperoleh di latar belakang (terus-menerus) melalui CameraManager atau API Kamera lainnya, dan tidak menghasilkan indikator yang terlihat oleh pengguna
Jika implementasi perangkat mengambil salah satu data di atas, implementasi tersebut:
[C-1-3] Hanya boleh mengirim semua data tersebut
dan logdari perangkat menggunakan mekanisme yang menjaga privasi, kecuali dengan izin eksplisit dari pengguna setiap kali data dibagikan. Mekanisme yang menjaga privasi didefinisikan sebagai “Mekanisme yang hanya memungkinkan analisis secara gabungan dan mencegah pencocokan peristiwa yang dicatat ke dalam log atau hasil turunan terhadap masing-masing pengguna”, untuk mencegah data per pengguna agar tidak dapat diintegrasikan (mis., diterapkan menggunakan teknologi privasi diferensial sepertiRAPPOR
).[C-1-5] TIDAK BOLEH membagikan data tersebut dengan komponen OS lain yang tidak mengikuti persyaratan yang diuraikan di bagian saat ini (9.8.6
Content Capturedata level OS dan standby), kecuali dengan izin eksplisit dari pengguna setiap kali data tersebut dibagikan. Kecuali fungsi tersebut dibangun sebagai Android SDK API (AmbientContext
,HotwordDetectionService
).[C-1-6] HARUS memberikan kemampuan pengguna untuk menghapus data sehingga implementasi
atau sarana kepemilikan mengumpulkanContentCaptureService
jikasaat data disimpan dalam bentuk apa pun di perangkat. Jika pengguna memilih untuk menghapus data, HARUS menghapus semua data historis yang dikumpulkan.
- [C-SR-3] SANGAT DIREKOMENDASIKAN untuk diimplementasikan dengan Android SDK API atau repositori open source milik OEM yang serupa; dan / atau dilakukan dalam implementasi dengan sandbox (lihat 9.8.15 Penerapan API dengan sandbox).
Android, melalui
SpeechRecognizer#onDeviceSpeechRecognizer()
menyediakan kemampuan untuk melakukan pengenalan ucapan di perangkat, tanpa melibatkan jaringan. Setiap penerapan SpeechKenalir di perangkat HARUS mengikuti kebijakan yang diuraikan di bagian ini.- Layar atau data lain apa pun yang dikirim melalui
9.8.10. Laporan Bug Konektivitas:
Lihat revisi
Jika implementasi perangkat mendeklarasikan flag fitur
android.hardware.telephony
, implementasi tersebut:- [C-1-4] Laporan yang dihasilkan menggunakan
BUGREPORT_MODE_TELEPHONY
HARUS berisi setidaknya informasi berikut:- File dump
SubscriptionManagerService
- File dump
- [C-1-4] Laporan yang dihasilkan menggunakan
9.8.14. Pengelola Kredensial: Dihapus
9.8.15. Implementasi API dengan Sandbox: Bagian baru
Lihat revisi
Android, melalui serangkaian API delegasi menyediakan mekanisme untuk memproses data tingkat OS dan data standby yang aman. Pemrosesan tersebut dapat didelegasikan ke apk prainstal dengan akses istimewa dan kemampuan komunikasi yang lebih rendah, yang dikenal sebagai Implementasi API dengan Sandbox.
Semua Implementasi API dengan Sandbox:
- [C-0-1] TIDAK BOLEH meminta izin INTERNET.
- [C-0-2] HARUS mengakses internet hanya melalui API terstruktur yang didukung oleh implementasi open source yang tersedia untuk publik menggunakan mekanisme yang menjaga privasi, atau secara tidak langsung melalui Android SDK API. Mekanisme yang menjaga privasi didefinisikan sebagai "tindakan yang hanya memungkinkan analisis secara gabungan dan mencegah pencocokan peristiwa yang dicatat ke dalam log atau hasil turunan dengan masing-masing pengguna", untuk mencegah data per pengguna agar tidak dapat diintegrasikan (misalnya, diterapkan menggunakan teknologi privasi diferensial seperti RAPPOR).
- [C-0-3] HARUS memisahkan layanan dari komponen sistem lainnya
(misalnya tidak mengikat layanan atau berbagi ID proses), kecuali untuk
hal berikut:
- Telepon, Kontak, UI Sistem, dan Media
- [C-0-4] TIDAK BOLEH mengizinkan pengguna mengganti layanan dengan aplikasi atau layanan yang dapat diinstal pengguna
- [C-0-5] hanya boleh mengizinkan layanan prainstal untuk mengambil data tersebut. Kecuali jika kemampuan penggantian terintegrasi dalam AOSP (mis. untuk Aplikasi Asisten Digital).
- [C-0-6] TIDAK BOLEH mengizinkan aplikasi apa pun selain mekanisme layanan bawaan untuk dapat mengambil data tersebut. Kecuali jika kemampuan pengambilan tersebut diimplementasikan dengan Android SDK API.
- [C-0-7] HARUS memberikan affordance pengguna untuk menonaktifkan layanan.
- [C-0-8] TIDAK BOLEH menghilangkan kemampuan pengguna untuk mengelola izin Android yang dipegang oleh layanan dan mengikuti model izin Android seperti yang dijelaskan di Bagian 9.1. Izin.
9.8.16. Data Audio dan Kamera berkelanjutan: Bagian baru
Lihat revisi
Selain persyaratan yang diuraikan dalam 9.8.2 Perekaman, data tingkat OS dan data standby 9.8.6, serta implementasi API dengan Sandbox 9.8.15, implementasi yang menggunakan data Audio yang diperoleh di latar belakang (berkelanjutan) melalui AudioRecord, SoundTrigger, atau data Audio API ATAU data Kamera lainnya yang diperoleh di latar belakang (berkelanjutan) melalui CameraManager atau API Kamera lainnya:
- [C-0-1] HARUS menerapkan indikator yang sesuai (kamera dan/atau mikrofon sebagaimana
per pasal 9.8.2 Perekaman), kecuali:
- Akses ini dilakukan dalam implementasi dengan Sandbox (lihat 9.8.15 Implementasi API dengan sandbox), melalui paket yang memiliki satu atau beberapa peran berikut: System UI Intelligence, System Ambient Audio Intelligence, System Audio Intelligence, System Notification Intelligence, System Text Intelligence, atau System Visual Intelligence.
- Akses dilakukan melalui sandbox, diimplementasikan, dan
diterapkan melalui mekanisme di AOSP (
HotwordDetectionService
,WearableSensingService
,VisualQueryDetector
). - Akses audio dilakukan untuk tujuan asistif oleh aplikasi
Asisten Digital, yang menyediakan
SOURCE_HOTWORD
sebagai sumber audio. - Akses dilakukan oleh sistem dan diimplementasikan dengan kode open source.
- [C-SR-1] SANGAT DIREKOMENDASIKAN untuk mewajibkan izin pengguna bagi setiap fungsi yang menggunakan data tersebut, dan dinonaktifkan secara default.
- [C-SR-2] SANGAT DIREKOMENDASIKAN untuk menerapkan perlakuan yang sama (yaitu, ikuti pembatasan yang diuraikan dalam 9.8.2 Perekaman, data level OS 9.8.6 dan data standby, Implementasi API dengan sandbox 9.8.15, dan data Audio dan Kamera Berkelanjutan 9.8.16) ke data Kamera yang berasal dari perangkat wearable jarak jauh.
Jika data Kamera disediakan dari perangkat wearable jarak jauh dan diakses dalam bentuk yang tidak terenkripsi di luar Android OS, implementasi yang di-sandbox, atau fungsi yang di-sandbox yang dibangun oleh
WearableSensingManager
, data tersebut:- [C-1-1] HARUS menunjukkan ke perangkat wearable jarak jauh untuk menampilkan indikator tambahan di sana.
Jika perangkat menyediakan kemampuan untuk berinteraksi dengan Aplikasi Asisten Digital tanpa kata kunci yang ditetapkan (baik menangani kueri pengguna umum atau menganalisis kehadiran pengguna melalui kamera):
- [C-2-1] HARUS memastikan implementasi tersebut disediakan oleh paket yang memiliki
peran
android.app.role.ASSISTANT
. - [C-2-2] HARUS memastikan penerapan tersebut menggunakan API Android
HotwordDetectionService
dan/atauVisualQueryDetectionService
.
- [C-0-1] HARUS menerapkan indikator yang sesuai (kamera dan/atau mikrofon sebagaimana
per pasal 9.8.2 Perekaman), kecuali:
9.8.17. Telemetri: Bagian baru
Lihat revisi
Android menyimpan log sistem dan aplikasi menggunakan StatsLog API. Log ini dikelola melalui StatsManager API yang dapat digunakan oleh aplikasi sistem dengan hak istimewa.
StatsManager juga menyediakan cara untuk mengumpulkan data yang dikategorikan sebagai sensitif terhadap privasi dari perangkat dengan mekanisme yang menjaga privasi. Secara khusus, API
StatsManager::query
memberikan kemampuan untuk membuat kueri kategori metrik yang dibatasi yang ditentukan di StatsLog.Semua penerapan yang membuat kueri dan mengumpulkan metrik yang dibatasi dari StatsManager:
- [C-0-1] HARUS menjadi satu-satunya aplikasi/implementasi di perangkat dan memiliki
izin
READ_RESTRICTED_STATS
. - [C-0-2] HARUS hanya mengirim data telemetri dan log perangkat menggunakan mekanisme yang menjaga privasi. Mekanisme yang menjaga privasi didefinisikan sebagai "fitur yang hanya memungkinkan analisis secara gabungan dan mencegah pencocokan peristiwa yang dicatat ke dalam log atau hasil turunan dengan masing-masing pengguna", untuk mencegah data per pengguna dapat dimasukkan (mis., diterapkan menggunakan teknologi privasi diferensial seperti RAPPOR).
- [C-0-3] TIDAK BOLEH mengaitkan data tersebut dengan identitas pengguna apa pun (seperti Akun) di perangkat.
- [C-0-4] TIDAK BOLEH membagikan data tersebut dengan komponen OS lainnya yang tidak mengikuti persyaratan yang diuraikan di bagian saat ini (9.8.17 Telemetri yang menjaga Privasi).
- [C-0-5] HARUS menyediakan kemampuan pengguna untuk mengaktifkan/menonaktifkan pengumpulan, penggunaan, dan berbagi telemetri yang menjaga privasi.
- [C-0-6] HARUS memberikan kemampuan pengguna untuk menghapus data tersebut, yang dikumpulkan oleh implementasi jika data disimpan dalam bentuk apa pun di perangkat. Jika pengguna memilih untuk menghapus data, HARUS menghapus semua data yang saat ini tersimpan di perangkat.
- [C-0-7] HARUS mengungkapkan penerapan protokol yang menjaga privasi dasar di repositori open source.
- [C-0-8 ]HARUS memberlakukan kebijakan traffic keluar data di bagian ini untuk membatasi pengumpulan data dalam kategori metrik yang dibatasi yang ditetapkan di StatsLog.
- [C-0-1] HARUS menjadi satu-satunya aplikasi/implementasi di perangkat dan memiliki
izin
-
Lihat revisi
Penerapan perangkatJika implementasi perangkat memiliki kemampuan untuk memverifikasi konten file berbasis per halaman, implementasi tersebut:
[
C-0-3C-2-1] mendukung verifikasi konten file secara kriptografisterhadap kunci tepercayatanpa membaca seluruh file.[
C-0-4C-2-2] TIDAK BOLEH mengizinkan permintaan baca pada file yang dilindungi berhasil jika konten yang dibacatidak diverifikasi terhadap kunci tepercayatidak diverifikasi per [C-2-1] di atas.
- [C-2-4] HARUS mengembalikan checksum file di O(1) untuk file yang diaktifkan.
-
Lihat revisi
Android Keystore System memungkinkan developer aplikasi menyimpan kunci kriptografis dalam penampung dan menggunakannya dalam operasi kriptografi melalui KeyChain API atau Keystore API. Implementasi perangkat:
- [C-0-3] HARUS membatasi jumlah upaya autentikasi utama yang gagal.
- [C-SR-2] SANGAT DIREKOMENDASIKAN untuk mengimplementasikan batas atas 20 upaya autentikasi utama yang gagal, dan jika pengguna mengizinkan dan memilih ikut serta dalam fitur tersebut, lakukan "Reset ke Setelan Pabrik" setelah melebihi batas upaya autentikasi utama yang gagal.
Jika implementasi perangkat menambahkan atau mengubah metode autentikasi untuk membuka kunci layar kunci jika didasarkan pada rahasia yang diketahui dan menggunakan metode autentikasi baru agar diperlakukan sebagai cara yang aman untuk mengunci layar, maka:
- [C-SR-3] PIN SANGAT DIREKOMENDASIKAN untuk memiliki minimal 6 digit, atau setara dengan entropi 20-bit.
- [C-2-1] PIN yang panjangnya kurang dari 6 digit TIDAK BOLEH memungkinkan entri otomatis tanpa interaksi pengguna untuk menghindari pengungkapan panjang PIN.
9.11.1. Layar Kunci Aman, Autentikasi, dan Perangkat Virtual:
Lihat revisi
Implementasi perangkat:
- [C-0-1] HARUS membatasi jumlah upaya autentikasi utama yang gagal.
- [C-SR-5] SANGAT DIREKOMENDASIKAN untuk mengimplementasikan batas atas 20 upaya autentikasi utama yang gagal. Jika pengguna mengizinkan dan memilih ikut serta dalam fitur tersebut, lakukan "Reset ke Setelan Pabrik" setelah melebihi batas upaya autentikasi utama yang gagal.
Jika implementasi perangkat menetapkan PIN numerik sebagai metode autentikasi utama yang direkomendasikan, maka:
- [C-SR-6] PIN SANGAT DIREKOMENDASIKAN untuk memiliki minimal 6 digit, atau setara dengan entropi 20-bit.
- [C-SR-7] PIN dengan panjang kurang dari 6 digit SANGAT DIREKOMENDASIKAN TIDAK untuk memungkinkan entri otomatis tanpa interaksi pengguna untuk menghindari pengungkapan panjang PIN.
Jika implementasi perangkat memiliki layar kunci yang aman dan menyertakan satu atau beberapa agen tepercaya, yang mengimplementasikan
TrustAgentService
System API, implementasi tersebut akan:[C-7-8] Pengguna HARUS ditantang untuk salah satu metode autentikasi utama yang direkomendasikan (misalnya: PIN, pola, sandi) setidaknya sekali setiap 72 jam atau kurang, kecuali jika keselamatan pengguna (misalnya gangguan pengemudi) menjadi perhatian.Jika implementasi perangkat memungkinkan aplikasi membuat tampilan virtual sekunder dan mendukung peristiwa input terkait seperti melalui VirtualDeviceManager dan layar tidak ditandai dengan VIRTUAL_DISPLAY_FLAG_SECURE, peristiwa tersebut:
[C-13-10] HARUS menonaktifkan penginstalan aplikasi yang dimulai dari perangkat virtual.9.17. Framework Virtualisasi Android:
Lihat revisi
Jika perangkat mengimplementasikan dukungan untuk Android Virtualization Framework API (
android.system.virtualmachine.*
), host Android:- [C-1-1] HARUS mendukung semua API yang ditentukan oleh
paket
android.system.virtualmachine
. - [C-1-2] TIDAK BOLEH mengubah Android SELinux dan model izin untuk pengelolaan Protected Virtual Machines (pVM).
- [C-1-3] TIDAK BOLEH memodifikasi, menghilangkan, atau mengganti aturan tidak pernah ada dalam sistem/sepolicy yang disediakan di Project Open Source Android upstream (AOSP) dan kebijakan HARUS dikompilasi dengan semua aturan yang tidak diizinkan.
- [C-1-4] HARUS hanya mengizinkan kode yang ditandatangani platform &
aplikasi dengan hak istimewa
TIDAK BOLEH mengizinkan kode yang tidak tepercaya (misalnya aplikasi 3p)untuk membuat dan menjalankanpVMProtected Virtual Machine . Catatan: Hal ini mungkin berubah dalam rilis Android mendatang.
- [C-1-5] TIDAK BOLEH mengizinkan
Protected Virtual MachinepVM untuk mengeksekusi kode yang bukan bagian dari setelan pabrik atau update-nya.Apa pun yang tidak tercakup oleh Booting Terverifikasi Android (misalnya, file yang didownload dari Internet atau di-sideload) TIDAK BOLEH diizinkan untuk dijalankan di Protected Virtual Machine.
- [C-1-5] Hanya boleh mengizinkan pVM yang tidak dapat di-debug untuk mengeksekusi kode dari image factory atau update platformnya yang juga menyertakan update apa pun untuk aplikasi dengan hak istimewa.
Jika perangkat menerapkan dukungan untuk Android Virtualization Framework API (
android.system.virtualmachine.*
), semua instanceProtected Virtual MachinepVM :- [C-2-1] HARUS dapat menjalankan semua sistem operasi yang tersedia di
APEX virtualisasi dalam
Protected Virtual MachinepVM . - [C-2-2] TIDAK BOLEH mengizinkan
Mesin Virtual yang DilindungipVM menjalankan sistem operasi yang tidak ditandatangani oleh pengimplementasi perangkat atau vendor OS. - [C-2-3] TIDAK BOLEH mengizinkan
Mesin Virtual yang DilindungipVM untuk mengeksekusi data sebagai kode (mis. SELinux tidak pernah mengizinkan execm).
- [C-2-4] TIDAK BOLEH memodifikasi, menghilangkan, atau mengganti aturan Neverallow yang ada dalam system/sepolicy/microdroid yang disediakan dalam Project Open Source Android upstream (AOSP).
- [C-2-5] HARUS mengimplementasikan mekanisme pertahanan mendalam
Protected Virtual MachinepVM (misalnya, SELinux untuk pVM), bahkan untuk sistem operasi non-Microdroid. - [C-2-6] HARUS memastikan bahwa pVM gagal
firmware menolakuntuk melakukan booting jikafirmware menolakimage awal tidak dapat memverifikasi yang akan dijalankan, tidak dapat diverifikasi. Verifikasi HARUS dilakukan di dalam VM. - [C-2-7] HARUS memastikan bahwa pVM gagal
firmware menolakuntuk melakukan booting jika integritas instance.img disusupi.
Jika perangkat mengimplementasikan dukungan untuk Android Virtualization Framework API (
android.system.virtualmachine.*
), hypervisor:- [C-3-1] HARUS memastikan bahwa halaman memori yang dimiliki secara eksklusif oleh VM (baik pVM maupun host VM) hanya dapat diakses oleh virtual machine itu sendiri atau hypervisor, bukan oleh virtual machine lain, baik yang dilindungi maupun tidak.
TIDAK BOLEH mengizinkan pVM apa pun mengakses halaman yang menjadi milik entitas lain (yaitu pVM atau hypervisor lain), kecuali jika dibagikan secara eksplisit oleh pemilik halaman. Ini termasuk VM host. Hal ini berlaku untuk akses CPU dan DMA. - [C-3-2] HARUS menghapus total halaman setelah digunakan oleh pVM dan sebelum halaman tersebut ditampilkan ke host (misalnya, PVM dihancurkan).
- [C-
3-3SR-1] SANGAT DIREKOMENDASIKAN untuk memastikanHARUS memastikanbahwa firmware pVM dimuat dan dieksekusi sebelum kode apa pun di pVM. - [C-3-4] HARUS memastikan bahwa setiap VM menghasilkan secret per VM yang
{Boot Certificate Chain (BCC) dan Compound Device Identifier (CDI) yang diberikan ke instance pVMhanya dapat diperoleh oleh instance VM tersebut dan berubah saat reset ke setelan pabrik dan OTA.
Jika perangkat mengimplementasikan dukungan untuk Android Virtualization Framework API, di semua area:
- [C-4-1] TIDAK BOLEH menyediakan fungsi ke pVM yang memungkinkan pengabaian Model Keamanan Android.
Jika perangkat mengimplementasikan dukungan untuk Android Virtualization Framework API, maka:
- [C-5-1] HARUS mampu mendukung Kompilasi Terisolasi tetapi dapat menonaktifkan fitur Kompilasi Terisolasi pada pengiriman perangkat
update runtime ART.
Jika perangkat mengimplementasikan dukungan untuk Android Virtualization Framework API, maka untuk Key Management:
- [C-6-1] HARUS melakukan root DICE rantai pada titik yang tidak dapat diubah pengguna, bahkan pada perangkat yang tidak terkunci. (Untuk memastikan konten tidak boleh di-spoofing).
- [C-SR-2
6-2] SANGAT DIREKOMENDASIKAN untuk menggunakan DICE sebagai mekanisme turunan rahasia per VM.HARUS DICE dengan benar, yaitu memberikan nilai yang benar.
- [C-1-1] HARUS mendukung semua API yang ditentukan oleh
paket