Layanan Kamera Android

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

Aktifkan 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 berbeda yang khusus untuk faktor bentuk otomotif:

Item Deskripsi
android.automotive.location Menentukan posisi kamera dalam kaitannya dengan rangka bodi kendaraan.
android.automotive.lens.facing Menunjukkan arah lensa kamera menghadap relatif terhadap rangka bodi kendaraan dan kursi penumpang.

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

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. Hal ini membantu memverifikasi bahwa aplikasi penting untuk keselamatan, seperti kamera tampilan 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 TIDAK BOLEH dikirim dari perangkat, termasuk data apa pun yang berasal dari data kamera. Aplikasi ini memerlukan izin android.permission.CAMERA untuk diberikan sebelumnya dan harus mematuhi kebijakan izin pemberian sebelumnya yang diuraikan dalam Desain untuk Mengemudi untuk persyaratan bawaan Google.

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 dalam daftar yang diizinkan.

Hanya aplikasi sistem dan aplikasi dengan hak istimewa yang diberi izin android.permission.CAMERA_PRIVACY_ALLOWLIST yang dapat menggunakan fitur ini. Partner Google Automotive Services (GAS) harus mengirimkan aplikasi mereka untuk ditinjau dan mematuhi kebijakan daftar yang diizinkan untuk privasi. 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 can't turn on
    privacy 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 di daftar yang diizinkan atau aplikasi yang diperlukan disembunyikan di UI Setelan Privasi. Namun, OEM dapat mengganti perilaku ini dengan menyetel 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 awal ke kamera

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