Mengelola Permission Android

Dipublikasikan: 12 Januari 2025 • Kategori: Android • Penulis: Jumanto

Android 13 (SDK 33) membawa perubahan besar pada permission. Beberapa permission lama berubah, dipisah, atau digantikan permission baru. Jika aplikasi Anda tidak update, request permission akan gagal dan fitur menjadi error.

1. Perubahan Permission di Android 13+

Android 13 memperkenalkan permission baru seperti:

Permission READ_EXTERNAL_STORAGE sudah tidak digunakan lagi pada SDK 33.

2. Contoh Manifest Permission Android 13+


<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />

3. Request Permission dengan Kotlin


private val requestPermission =
    registerForActivityResult(ActivityResultContracts.RequestPermission()) { granted ->
        if (granted) {
            // Izin diberikan
        } else {
            // Izin ditolak
        }
    }

fun askForPermission() {
    requestPermission.launch(Manifest.permission.READ_MEDIA_IMAGES)
}

4. Request Banyak Permission Sekaligus


private val multiPermission =
    registerForActivityResult(ActivityResultContracts.RequestMultiplePermissions()) { permissions ->
        permissions.entries.forEach {
            Log.d("PERMISSION", "${it.key} = ${it.value}")
        }
    }

fun askMulti() {
    multiPermission.launch(
        arrayOf(
            Manifest.permission.READ_MEDIA_IMAGES,
            Manifest.permission.READ_MEDIA_VIDEO
        )
    )
}

5. Menangani Permission yang Ditolak


if (!shouldShowRequestPermissionRationale(Manifest.permission.READ_MEDIA_IMAGES)) {
    // User memilih "Don't ask again"
    // Tampilkan dialog ke Settings
}

6. Membuka Pengaturan Aplikasi


val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS)
intent.data = Uri.fromParts("package", packageName, null)
startActivity(intent)

7. Permission Khusus Notifikasi (Android 13)

Android 13 menambahkan permission baru untuk menampilkan notifikasi:


<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />

8. Best Practice Permission Android

Dengan mematuhi aturan permission Android terbaru, aplikasi Anda akan berjalan lebih aman, stabil, dan kompatibel dengan semua versi Android modern.

← Kembali ke Blog