Berikan setiap fitur hanya akses sistem yang benar-benar dapat dibenarkan
Jangan menyetujui semua izin sistem selama penyiapan. Mulailah dengan fitur yang ingin Anda gunakan, tunggu hingga Anda mengaktifkannya, dan berikan opsi terkecil yang dapat menyelesaikan tindakan tersebut. Batasan izin yang berguna memiliki enam bidang: fitur, sumber daya sistem, momen pemicu, cakupan akses, alternatif tanpa izin, dan uji pencabutan. Terapkan kartu tersebut secara terpisah untuk mikrofon, kamera, foto, kontak, lokasi, Bluetooth, perangkat sekitar, jaringan lokal, dan notifikasi. Izin sistem operasi mengatur akses di masa mendatang ke sumber daya perangkat; izin ini tidak menjelaskan penyimpanan di sisi layanan, pembagian, atau penghapusan data yang telah diunggah. Pisahkan kontrol akun tersebut dalam kolom tersendiri.
Inventarisasi fitur sebelum izin
Cantumkan hanya fitur yang Anda gunakan atau rencanakan untuk diuji: input suara, mengambil gambar baru, melampirkan gambar yang ada, mencari kontak yang dikenal, output berbasis lokasi, menghubungkan aksesori, menemukan perangkat di jaringan lokal, atau menerima notifikasi. Di samping setiap fitur, tuliskan sumber daya sistem persis yang dibutuhkannya. Jangan menyalin seluruh halaman izin ke dalam satu daftar “wajib”. Android menyatakan bahwa banyak tugas dapat menggunakan alternatif tanpa izin runtime yang luas, dan merekomendasikan untuk menunggu hingga pengguna memicu tindakan yang relevan. Jika suatu fitur tidak memiliki pemicu yang jelas, output yang terlihat, atau penjelasan, nonaktifkan izinnya dan tandai pemetaan tersebut sebagai belum terselesaikan.
Minta pada saat penggunaan dan baca perintah sistem
Permintaan izin lebih mudah dievaluasi ketika muncul setelah tombol yang membutuhkannya ditekan: ketuk rekam sebelum mikrofon, ketuk pindai sebelum kamera, ketuk pilih sebelum foto. Panduan runtime Android merekomendasikan untuk meminta izin sesuai konteks, memungkinkan pengguna untuk membatalkan, dan menjaga bagian lain dari aplikasi tetap dapat digunakan saat izin ditolak. Bacalah dialog sistem operasi alih-alih mengandalkan halaman yang dirancang oleh aplikasi. Perhatikan apakah pilihannya hanya satu kali, item yang dipilih, perkiraan, saat digunakan, atau lebih luas. Jika beberapa izin muncul saat aplikasi baru dibuka tanpa ada tindakan fitur, tolak atau tunda izin tersebut dan buka masing-masing fitur secara sengaja nanti.
Pilih pemilih (picker) atau tindakan tunggal daripada akses galeri penuh
Jalur item terpilih sering kali memberikan akses yang cukup tanpa membuka seluruh koleksi. Android mendokumentasikan pemilih foto dan kontak serta mekanisme terbatas lainnya sebagai alternatif untuk izin yang luas. Untuk lampiran, pilih satu foto atau file; untuk foto profil, pertimbangkan tindakan kamera sistem atau satu gambar yang dipilih; untuk mengundang seseorang, masukkan alamat secara manual atau gunakan pemilih kontak jika tersedia. Opsi persisnya bergantung pada platform dan versi, jadi catat pilihan yang benar-benar Anda lihat. Jalur yang lebih sempit hanya berguna jika fiturnya tetap berfungsi; verifikasi proses pengunggahan, pemotongan, pembatalan, dan percobaan ulang dengan sampel netral sebelum menggunakan materi pribadi.
Pisahkan akses sensor dari hasil yang disimpan
Akses mikrofon dapat mengaktifkan perekaman, tetapi klip audio yang disimpan, transkrip, lampiran obrolan, atau file yang diunduh menjadi objek yang berbeda. Akses kamera dapat membuat gambar yang juga masuk ke galeri foto, cadangan cloud, riwayat pesan, atau ekspor. Akses kontak dapat mendukung penemuan sementara layanan juga menyimpan pengidentifikasi yang dipilih. Penolakan sistem menghentikan atau membatasi pembacaan berikutnya; ini tidak serta-merta menghapus rekaman yang ada, gambar, teks turunan, kecocokan kontak yang diunggah, atau salinan yang dibagikan. Untuk setiap fitur, tambahkan baris penyimpanan yang menyebutkan salinan perangkat, objek layanan, item turunan, penerima, dan kontrol penghapusan. Ini mencegah tombol izin disalahartikan sebagai penghapusan data secara menyeluruh.
Tinjau izin perangkat keras dan jaringan secara independen
Akses Bluetooth, perangkat sekitar, dan jaringan lokal tidak dapat dipertukarkan. Sebutkan aksesori, rekanan (peer), atau layanan lokal yang seharusnya dijangkau oleh fitur tersebut, apakah penemuan diperlukan sekali atau berulang kali, dan status visual apa yang mengonfirmasi koneksi. Jangan berikan izin tersebut hanya karena aplikasi pendamping menawarkan integrasi opsional. Apple memungkinkan pengguna meninjau kategori akses seperti Bluetooth dan Jaringan Lokal di pengaturan privasi, sementara kamera dan mikrofon menggunakan indikator visual. Gunakan indikator sebagai petunjuk untuk memeriksa, bukan bukti akses yang tidak tepat. Nonaktifkan integrasi opsional, cabut izinnya, dan pastikan obrolan biasa tetap dapat digunakan.
Jalankan matriks pencabutan setelah penyiapan dan pembaruan
Buat satu baris per izin. Catat cakupan yang diberikan, fitur yang diuji, perilaku yang diharapkan setelah penolakan, perilaku aktual, objek tersimpan yang tertinggal, dan pemicu peninjauan berikutnya. Cabut satu izin pada satu waktu, buka kembali aplikasi, lalu uji fitur yang bersangkutan ditambah tindakan inti yang tidak terkait. Pembatasan yang baik hanya memblokir atau mempersempit fitur dependen dan menjelaskan cara mengaktifkannya kembali tanpa memaksakan akses yang tidak terkait. Perintah berulang yang tidak terduga, kegagalan yang tidak terkait, atau akses setelah pencabutan harus dicatat dalam hasil. Tinjau kembali setelah pembaruan besar pada aplikasi atau sistem operasi, saat mengaktifkan integrasi baru, atau saat Anda berhenti menggunakan suatu fitur. Hapus izin yang fiturnya sudah tidak memiliki penanggung jawab aktif.
Pisahkan kontrol sistem operasi dan akun ke dalam dua kolom
Selesaikan dengan dua kolom. Kolom sistem mencakup kamera, mikrofon, foto, kontak, lokasi, sumber daya sekitar, jaringan lokal, dan notifikasi. Kolom akun mencakup riwayat, unggahan, transkrip, memori, pembagian, pilihan terkait model, ekspor, dan penghapusan. Tombol sistem tidak boleh digunakan sebagai bukti bahwa objek akun telah hilang, dan tombol beralih dalam aplikasi tidak boleh dianggap mengesampingkan sistem operasi. Catat rute yang tepat untuk setiap perubahan dan satu pengujian yang dapat diamati. Status akhir dapat berupa: diizinkan untuk fitur ini, hanya item yang dipilih, diizinkan saat digunakan, ditolak dengan alternatif (fallback), atau belum terselesaikan. Statusnya tidak boleh berupa “izinkan semuanya karena diminta oleh aplikasi.”
Pertanyaan umum
Haruskah saya memberikan semua izin saat memasang aplikasi pendamping?
Tidak. Tunggu hingga ada tindakan fitur, baca perintah sistem, dan berikan hanya opsi terbatas yang menyelesaikannya.
Apakah mencabut izin mikrofon akan menghapus catatan suara lama?
Tidak. Tindakan ini hanya membatasi akses mikrofon di masa mendatang; rekaman, transkrip, dan unggahan memerlukan kontrol penghapusannya sendiri.
Apakah pemilih foto (photo picker) berbeda dari akses galeri foto penuh?
Sering kali ya. Pemilih foto hanya dapat memberikan item yang dipilih; gunakan jalur terbatas ini jika sudah cukup untuk menyelesaikan tugas.
