Skip to content

Commit

Permalink
fix(android): resolve permission issue for android 13
Browse files Browse the repository at this point in the history
On Android 13, both `READ_PHONE_NUMBERS` and `READ_PHONE_STATE` permission are required.
  • Loading branch information
jonz94 committed Apr 16, 2023
1 parent 541a8de commit d8939ff
Showing 1 changed file with 2 additions and 3 deletions.
Expand Up @@ -14,7 +14,6 @@ import com.getcapacitor.annotation.PermissionCallback
@CapacitorPlugin(
name = "Sim",
permissions = [
// SDK VERSIONS 32 AND BELOW
Permission(
strings = [
Manifest.permission.READ_PHONE_STATE,
Expand All @@ -41,7 +40,7 @@ class SimPlugin : Plugin() {
fun getSimCards(call: PluginCall) {
if (!isPermissionGranted()) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
requestPermissionForAlias(READ_PHONE_NUMBERS, call, "permissionCallback")
requestPermissionForAliases(arrayOf(READ_PHONE_NUMBERS, READ_PHONE_STATE), call, "permissionCallback")
} else {
requestPermissionForAlias(READ_PHONE_STATE, call, "permissionCallback")
}
Expand Down Expand Up @@ -101,7 +100,7 @@ class SimPlugin : Plugin() {

private fun isPermissionGranted(): Boolean {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
return getPermissionState(READ_PHONE_NUMBERS) == PermissionState.GRANTED;
return getPermissionState(READ_PHONE_NUMBERS) == PermissionState.GRANTED && getPermissionState(READ_PHONE_STATE) == PermissionState.GRANTED;
}

return getPermissionState(READ_PHONE_STATE) == PermissionState.GRANTED;
Expand Down

0 comments on commit d8939ff

Please sign in to comment.