Indikator privasi

Android memberikan transparansi kepada pengguna dengan menampilkan indikator privasi untuk jenis akses berikut:

Pengguna mengetuk indikator untuk melihat aplikasi mana yang telah mengakses data mereka.

Penggunaan aktif dan terbaru

UI Android membedakan antara penggunaan yang sedang berjalan dan penggunaan terbaru:

  • Di Android 17 atau yang lebih tinggi, penggunaan lokasi dianggap aktif jika ditandai oleh sistem sebagai sedang berjalan, atau berusia kurang dari 10 detik. Untuk titik lokasi, akses dianggap aktif jika aplikasi non-sistem berjalan dalam status latar depan.

  • Di Android 12 atau yang lebih tinggi, penggunaan mikrofon dan kamera dianggap aktif jika ditandai oleh sistem sebagai sedang berjalan, atau berusia kurang dari lima detik.

Ikon status bar ditampilkan setiap kali aplikasi memiliki akses mikrofon, kamera, atau lokasi yang sensitif terhadap pengguna. Pengguna dapat mengetuk ikon ini dan melihat aplikasi mana yang mengakses mikrofon, kamera, lokasi, atau kombinasi item ini. Berikut contoh indikator yang sedang digunakan:

Indikator yang menunjukkan akses aktif

Gambar 1. Indikator yang sedang digunakan yang menampilkan akses aktif (pojok kanan atas).

Akses dianggap aktif selama indikator ditampilkan. Ikon akan ditampilkan terlebih dahulu, lalu bertransisi ke titik yang akan tetap ada hingga aplikasi ditutup atau dihentikan. Saat pengguna membuka Setelan Cepat, lalu mengetuk indikator, dialog akan muncul yang menunjukkan apakah aplikasi menggunakan mikrofon, kamera, lokasi, atau kombinasi item ini.

Gambar 2 mengilustrasikan indikator akses aktif saat data telah diakses dalam jangka waktu aktif oleh aplikasi yang sedang berjalan.

Indikator untuk akses aktif dan terbaru serta sumber

Gambar 2. Indikator akses aktif dan terbaru.

Indikator akses terbaru menunjukkan bahwa aplikasi mengakses data selama 15 detik sebelumnya (atau 20 detik untuk data lokasi), tetapi aplikasi tersebut tidak aktif. Semua aplikasi aktif ditampilkan dalam dialog, tetapi hanya satu aplikasi yang ditampilkan sebagai sumber akses terbaru, meskipun lebih dari satu aplikasi mengakses data dalam jangka waktu 15 atau 20 detik sebelumnya. Semua aplikasi yang mengakses data lokasi dalam jangka waktu aktif atau terbaru ditampilkan dalam dialog. Tampilan akses akan tetap ada hingga pengguna menutup dialog notifikasi.

Mengirim dan mengaktifkan

Class PermissionManager menyediakan metode untuk mengisi dialog (yang berada di UI Sistem). UI Sistem bereaksi terhadap tombol konfigurasi perangkat privacy/mic_camera_indicators_enabled; tombol ini diperlukan karena ada dua media pengiriman terpisah: (1) Kirim, lalu (2) Aktifkan.

Alur proses

Fungsi Indikator Izin memiliki tiga bagian utama:

  • Aplikasi
  • Indikator (ditangani oleh UI Sistem)
  • Cara untuk menentukan aplikasi mana yang menggunakan data

PermissionController menyediakan mekanisme untuk menentukan aplikasi mana yang menggunakan data. UI Sistem memproses aplikasi yang menggunakan data pribadi. UI Sistem menampilkan ikon di panel navigasi atas yang sesuai dengan izin yang digunakan. PermissionController menampilkan data tentang penggunaan saat pengguna mengklik ikon.

Alur proses untuk fungsi Indikator Izin

Gambar 3. Alur transisi komponen sistem dan (UI).

  • 1 Aplikasi meminta data pribadi dari sistem.

  • 2 Sistem memeriksa izin. Jika izin diizinkan, sistem akan memberi tahu penyedia data, dan mencatat penggunaan di operasi aplikasi.

  • 3 Penyedia data memberikan data ke aplikasi.

  • 4-5 Pengguna mengklik ikon. UI Sistem meminta data dari PermissionManager dan menampilkan dialog kepada pengguna.

Detail proses

Operasi aplikasi mencatat akses ke API yang dilindungi izin runtime, melacak status aktivitas dan jumlah panggilan API individual, serta berinteraksi dengan kamera, mikrofon, dan indikator untuk menunjukkan kepada pengguna kapan aplikasi mengakses data audio dan kamera di perangkat mereka.

  1. Aplikasi menggunakan mikrofon, kamera, atau lokasi dengan memanggil AppOpsManager.startOp, stopOp, atau noteOp. Tindakan ini akan membuat catatan operasi aplikasi di server sistem. Di Android 17 dan yang lebih tinggi, indikator lokasi juga menggunakan catatan operasi aplikasi ini.

  2. UI Sistem memproses operasi aplikasi baru menggunakan pemroses AppOpsManager.OnOpActiveChangedInternalListener dan OnOpNotedListener. Saat penggunaan baru masuk (melalui panggilan ke startOp atau noteOp), UI Sistem akan memverifikasi bahwa penggunaan tersebut dilakukan oleh aplikasi sistem:

    • Jika UI Sistem memverifikasi penggunaan aplikasi sistem, dan jika penggunaan tersebut untuk mikrofon, UI Sistem akan memeriksa apakah mikrofon dibisukan.

    • Jika UI Sistem memverifikasi penggunaan aplikasi non-sistem (dan, untuk penggunaan mikrofon, bahwa mikrofon tidak dibisukan; untuk penggunaan kamera, bahwa kamera diaktifkan), UI Sistem akan menampilkan ikon yang mencerminkan penggunaan tersebut.

    • Jika UI Sistem memverifikasi penggunaan aplikasi non-sistem, UI Sistem akan menampilkan ikon yang mencerminkan penggunaan tersebut, asalkan tombol yang relevan aktif:

      • Untuk mikrofon: Mikrofon tidak dibisukan.
      • Untuk kamera: Kamera diaktifkan.
      • Untuk lokasi: Aplikasi berjalan dalam status latar depan.

Jika UI Sistem menerima noteOp, yang tidak memiliki durasi, UI Sistem akan menampilkan ikon selama minimal 5 detik (10 detik untuk lokasi). Jika tidak, ikon akan ditampilkan hingga menerima stopOp, atau selama durasi minimum 5 atau 10 detik, mana saja yang lebih lama. Pengguna yang mengklik ikon akan memulai intent yang masuk ke PermissionController untuk memulai dialog.

PermissionController memuat semua penggunaan terbaru untuk mikrofon, kamera, dan lokasi. Aplikasi ini memeriksa apakah ada yang sedang berjalan, atau sedang berjalan dalam jangka waktu yang ditetapkan oleh UI Sistem (15 detik untuk mikrofon atau kamera, 20 detik untuk lokasi). Jika menemukan kecocokan, aplikasi ini akan menampilkan nama aplikasi dan izin yang digunakan.

Telefoni harus menerapkan penggunaan izin (untuk memperhitungkan tumpukan mikrofon terpisah yang digunakan dalam panggilan telepon), saat menggunakan aplikasi Google Penelusuran Android (AGSA) dan GMS.