Catatan: Dalam beberapa kasus, izin yang Anda minta
melalui <uses-permission>
dapat memengaruhi cara
pemfilteran aplikasi Anda oleh Google Play.
Jika Anda meminta izin terkait perangkat keras—
misalnya CAMERA
—Google Play akan menganggap
aplikasi Anda membutuhkan fitur perangkat keras yang mendasarinya dan memfilter aplikasi
dari perangkat yang tidak menawarkannya.
Untuk mengontrol pemfilteran, selalu deklarasikan
fitur perangkat keras secara eksplisit dalam elemen <uses-feature>
, daripada
harus mengandalkan Google Play untuk "menemukan" persyaratan dalam
elemen <uses-permission>
. Kemudian, jika ingin menonaktifkan
pemfilteran untuk fitur tertentu, Anda dapat menambahkan
atribut android:required="false"
ke
deklarasi <uses-feature>
.
Untuk daftar izin yang menyiratkan
fitur hardware, lihat dokumentasi untuk elemen
<uses-feature>
.
- sintaksis:
<uses-permission android:name="string" android:maxSdkVersion="integer" />
- terdapat dalam:
<manifest>
- deskripsi:
- Menentukan izin sistem yang harus diberikan pengguna agar
aplikasi dapat beroperasi dengan benar. Izin akan diberikan oleh pengguna jika
aplikasi diinstal (pada perangkat yang menjalankan Android 5.1 dan yang lebih lama) atau ketika aplikasi berjalan (pada perangkat yang menjalankan Android 6.0 dan yang lebih bari).
Untuk informasi izin selengkapnya, lihat bagian Izin dalam pengantar dan panduan Izin Sistem API terpisah. Daftar izin yang ditentukan oleh platform dasar ini dapat ditemukan di
android.Manifest.permission
. - atribut:
android:name
- Nama izin. Nama dapat berupa izin yang ditentukan oleh
aplikasi dengan elemen
<permission>
, izin yang ditentukan oleh aplikasi lain, atau salah satu izin sistem standar (seperti"android.permission.CAMERA"
atau"android.permission.READ_CONTACTS"
). Seperti yang ditampilkan contoh ini, nama izin biasanya menyertakan nama paket sebagai awalan. android:maxSdkVersion
- API level tertinggi yang digunakan untuk memberikan izin ini ke aplikasi Anda.
Menetapkan atribut ini akan sangat berguna jika izin yang diperlukan oleh aplikasi tidak lagi diperlukan, dan ini dimulai
pada API level tertentu.
Misalnya, mulai Android 4.4 (API level 19), aplikasi Anda tidak perlu lagi meminta izin
WRITE_EXTERNAL_STORAGE
saat aplikasi ingin menulis ke direktori khusus aplikasinya sendiri di penyimpanan eksternal (direktori yang disediakan olehgetExternalFilesDir()
). Namun, izin diperlukan untuk API level 18 dan yang lebih lama. Jadi, Anda dapat mendeklarasikan bahwa izin ini hanya diperlukan hingga API level 18 dengan deklarasi seperti ini:<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="18" />
Dengan cara ini, dimulai dengan API level 19, sistem tidak akan lagi memberikan izin
WRITE_EXTERNAL_STORAGE
pada aplikasi.Atribut ini ditambahkan di API level 19.
- diperkenalkan di:
- API Level 1
- lihat juga: