Ardi Ardi - 6 months ago 18
Android Question

Is it available to set checkSelfPermission on minimum SDK < 23?

New runtime permissions in Android-M asking for minimum 23 API level, but I still need minimum 16 API level in my project.

enter image description here

So, how to make this code more forward-compatible?

Regards

Answer

Use ContextCompat.checkSelfPermission(), ActivityCompat.requestPermissions(), and ActivityCompat.shouldShowPermissionRequestRationale(), from the support-v4 library (v23 or higher). These are backwards-compatible; if you are running on an older version of Android, they will "do the right thing" (e.g., return PackageManager.PERMISSION_GRANTED for ContextCompat.checkSelfPermission()).