<izin-penggunaan>
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Catatan: Dalam beberapa kasus, izin yang Anda minta
melalui <uses-permission>
dapat memengaruhi cara Google Play memfilter
aplikasi Anda. Jika Anda meminta izin terkait hardware, seperti
CAMERA
, Google Play akan menganggap aplikasi Anda
memerlukan fitur hardware pokok 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. Pengguna memberikan izin saat
aplikasi diinstal di perangkat yang menjalankan Android 5.1 dan versi lama atau saat aplikasi berjalan, di perangkat yang menjalankan Android 6.0 dan versi lebih baru.
Untuk mengetahui informasi selengkapnya tentang izin, lihat bagian
Izin
di ringkasan manifes aplikasi dan panduan
Izin di Android.
Daftar izin yang ditentukan oleh platform dasar tersedia di
android.Manifest.permission
.
- atribut:
android:name
- Nama izin. Nama bisa berupa izin yang didefinisikan oleh
aplikasi dengan elemen
<permission>
,
izin yang didefinisikan oleh aplikasi lain, atau salah satu dari
izin sistem standar (seperti
"android.permission.CAMERA"
atau "android.permission.READ_CONTACTS"
). Sebagaimana yang ditampilkan dalam contoh ini,
nama izin biasanya mencakup 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 pemberian izin ini dimulai
pada API level tertentu.
Misalnya, mulai Android 4.4 (API level 19), aplikasi tidak lagi
perlu meminta izin WRITE_EXTERNAL_STORAGE
untuk menulis ke direktori khusus aplikasi miliknya sendiri pada penyimpanan eksternal,
yang disediakan oleh getExternalFilesDir()
.
Akan tetapi,
izin diperlukan untuk API level 18 dan versi lama. Jadi, Anda dapat mendeklarasikan bahwa izin
ini hanya diperlukan hingga API level 18 dengan deklarasi seperti berikut:
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
android:maxSdkVersion="18" />
Dengan cara ini, dimulai dengan API level 19, sistem tidak lagi memberikan izin WRITE_EXTERNAL_STORAGE
pada aplikasi.
Ditambahkan dalam API level 19.
- diperkenalkan di:
- API level 1
- lihat juga:
-
Konten dan contoh kode di halaman ini tunduk kepada lisensi yang dijelaskan dalam Lisensi Konten. Java dan OpenJDK adalah merek dagang atau merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-07-27 UTC.
[null,null,["Terakhir diperbarui pada 2025-07-27 UTC."],[],[],null,["# <uses-permission\u003e\n\n**Note:** In some cases, the permissions that you request\nthrough `\u003cuses-permission\u003e` can affect how Google Play filters your\napplication. If you request a hardware-related permission, such as\n`CAMERA`, Google Play assumes that your\napplication requires the underlying hardware feature and filters the application\nfrom devices that don't offer it.\n\nTo control filtering, always explicitly declare\nhardware features in `\u003cuses-feature\u003e` elements, rather than\nrelying on Google Play to \"discover\" the requirements in\n`\u003cuses-permission\u003e` elements. Then, if you want to disable\nfiltering for a particular feature, you can add a\n`android:required=\"false\"` attribute to the\n`\u003cuses-feature\u003e` declaration.\n\nFor a list of permissions that imply\nhardware features, see the documentation for the [`\u003cuses-feature\u003e`](/guide/topics/manifest/uses-feature-element#permissions-features) element.\n\nsyntax:\n:\n\n ```xml\n \u003cuses-permission android:name=\"string\"\n android:maxSdkVersion=\"integer\" /\u003e\n ```\n\ncontained in:\n: [\u003cmanifest\u003e](/guide/topics/manifest/manifest-element)\n\ndescription:\n\n: Specifies a system permission that the user must grant for the app to operate correctly. The user grants permissions when the application installs, on devices running Android 5.1 and lower, or while the app runs, on devices running Android 6.0 and higher.\u003cbr /\u003e\n\n\n For more information on permissions, see the\n [Permissions](/guide/topics/manifest/manifest-intro#perms)\n section in the app manifest overview and the\n [Permissions on Android](/guide/topics/permissions) guide.\n A list of permissions defined by the base platform is at\n [android.Manifest.permission](/reference/android/Manifest.permission).\n\nattributes:\n:\n\n `android:name`\n : The name of the permission. It can be a permission defined by the\n application with the [\u003cpermission\u003e](/guide/topics/manifest/permission-element)\n element, a permission defined by another application, or one of the\n standard system permissions, such as\n [\"android.permission.CAMERA\"](/reference/android/Manifest.permission#CAMERA)\n or [\"android.permission.READ_CONTACTS\"](/reference/android/Manifest.permission#READ_CONTACTS). As these examples show,\n a permission name typically includes the package name as a prefix.\n\n `android:maxSdkVersion`\n\n : The highest API level at which this permission is granted to your app. Setting this attribute is useful if the permission your app requires is no longer needed beginning at a certain API level.\u003cbr /\u003e\n\n For example, beginning with Android 4.4 (API level 19) it's no longer necessary for your app\n to request the [WRITE_EXTERNAL_STORAGE](/reference/android/Manifest.permission#WRITE_EXTERNAL_STORAGE)\n permission to write to its own application-specific directories on external storage, which are\n provided by [getExternalFilesDir()](/reference/android/content/Context#getExternalFilesDir(java.lang.String)).\n\n However,\n the permission *is required* for API level 18 and lower. So you can declare that this\n permission is needed only up to API level 18 with a declaration like the following: \n\n ```xml\n \u003cuses-permission\n android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"\n android:maxSdkVersion=\"18\" /\u003e\n ```\n\n This way, beginning with API level 19, the system no longer grants your app the\n `WRITE_EXTERNAL_STORAGE` permission.\n\n Added in API level 19.\n\nintroduced in:\n: API level 1\n\nsee also:\n:\n - [\u003cpermission\u003e](/guide/topics/manifest/permission-element)\n - [`\u003cuses-permission-sdk-23\u003e`](/guide/topics/manifest/uses-permission-sdk-23-element)\n - [\u003cuses-feature\u003e](/guide/topics/manifest/uses-feature-element)"]]