Menggunakan Layanan Kamera Android

Layanan Kamera Android terdiri dari stack kamera yang digunakan di perangkat otomotif, serta dalam faktor bentuk lainnya seperti ponsel, tablet, dan TV. Untuk melihat keseluruhan arsitektur kamera, lihat Kamera. Halaman ini berfokus pada topik khusus untuk perangkat otomotif, dan menggunakan Android Camera API.

Mengaktifkan Layanan Kamera Android

Untuk mengaktifkan Layanan Kamera Android di platform otomotif, makefile produk harus menentukan ENABLE_CAMERA_SERVICE sebagai true.

Karakteristik kamera khusus otomotif

Dalam konteks perangkat otomotif, HAL kamera harus menyertakan dua karakteristik khas khusus untuk faktor bentuk otomotif:

Nama Deskripsi
android.automotive.location Menentukan posisi kamera sehubungan dengan bingkai tubuh kendaraan.
android.automotive.lens.facing Menunjukkan arah lensa kamera yang menghadap relatif terhadap bingkai bodi kendaraan dan kursi penumpang.

Dalam situasi saat kamera tidak tepat diselaraskan dengan lokasi atau orientasi lensa tertentu (ditunjukkan dengan adanya *_OTHER dalam karakteristik android.automotive.location atau android.automotive.lens.facing), atau saat beberapa kamera berbagi lokasi dan arah yang sama, HAL kamera harus memberikan karakteristik tambahan agar aplikasi dapat menentukan lokasi kamera secara akurat. Karakteristik ini meliputi:

Memberikan akses ke Pengguna Sistem Headless

Aplikasi sistem dan pihak pertama (1P) tertentu dapat mengakses kamera sebagai Pengguna Sistem Headless, yang juga dikenal sebagai Pengguna 0. Fitur ini memastikan bahwa aplikasi yang sangat penting untuk keselamatan, seperti kamera belakang, dapat melanjutkan streaming kamera tanpa gangguan, terlepas dari peralihan pengguna latar depan. Hanya aplikasi yang ditandatangani platform dan memiliki izin baru android.permission.CAMERA_HEADLESS_SYSTEM_USER yang dapat mengakses kamera sebagai Pengguna 0.

Untuk aplikasi yang mengakses kamera sebagai Pengguna 0, data kamera HARUS digunakan secara lokal dan HARUS tidak dikirim keluar dari perangkat, termasuk data apa pun yang berasal dari data kamera. Aplikasi ini mewajibkan izin android.permission.CAMERA diberikan sebelumnya dan harus mematuhi kebijakan izin pemberian sebelumnya yang diuraikan dalam Desain untuk Mengemudi untuk persyaratan GAS.

Mengonfigurasi daftar yang diizinkan untuk privasi kamera

Produsen peralatan asli (OEM) kini dapat mengonfigurasi aplikasi kamera tertentu untuk disertakan dalam daftar yang diizinkan yang memberikan akses kamera, terlepas dari status tombol privasi kamera. Fitur ini memungkinkan pengguna menonaktifkan akses kamera untuk aplikasi hiburan, seperti media sosial dan konferensi video, sekaligus mengizinkan akses kamera untuk aplikasi tertentu yang diizinkan.

Hanya aplikasi sistem dan aplikasi dengan hak istimewa yang diberi izin android.permission.CAMERA_PRIVACY_ALLOWLIST yang dapat menggunakan fitur ini. Partner Layanan Otomotif Google (GAS) harus mengirimkan aplikasi mereka yang telah diizinkan untuk ditinjau dan mematuhi kebijakan daftar privasi yang diizinkan. Untuk mempelajari lebih lanjut, lihat Android untuk Mobil.

Menambahkan aplikasi ke daftar yang diizinkan

Di direktori etc/sysconfig:

  1. Tambahkan nama paket aplikasi dalam file XML konfigurasi sistem:

    <!-- In an xml file under etc/sysconfig —>
    
    <!--
    Allowlisted packages for the camera privacy toggle. Users will not be able to turn the privacy on for these packages as OEM requires camera access for these packages to preserve user safety.
    -->
    
    <config>
        <camera-privacy-allowlisted-app package="package_name" />
    </config>
    
  2. Tambahkan URL pengungkapan kebijakan privasi aplikasi ke AndroidManifest.xml. Nama meta-data harus privacy_policy.

    <meta-data android:name="privacy_policy" android:value= privacy policy URL/>
    

Secara default, tombol privasi kamera untuk aplikasi yang diizinkan atau aplikasi yang diperlukan disembunyikan di UI Setelan Privasi. Namun, OEM dapat mengganti perilaku ini dengan menetapkan tanda berikut ke TRUE. Hal ini memungkinkan OEM menyesuaikan visibilitas tombol privasi kamera untuk aplikasi yang diperlukan berdasarkan preferensi mereka.

<!-- Whether to show the toggle to turn on the camera privacy for required apps -->

<bool name="config_show_camera_required_apps_toggle">false</bool>

Mendapatkan akses kamera awal

Aplikasi tertentu yang sensitif terhadap waktu dan berorientasi pada keselamatan dapat mengakses kamera sebelum proses booting Android selesai. Namun, akses ini diberikan secara eksklusif kepada klien dengan hak istimewa yang memiliki UID AID_AUTOMOTIVE_EVS. Untuk mempelajari lebih lanjut cara menetapkan UID tertentu ke aplikasi native, lihat Discretionary access control (DAC). Akses awal ke kamera ini terbatas pada kamera sistem yang diposisikan di bagian luar bodi kendaraan.