Detailed explanation of three writing methods of Android detection authority

  • 2021-10-16 02:38:39
  • OfStack

This article introduces a detailed explanation of Android detection authority of three ways of writing, this site feel quite good, now share with you, also give you a reference. Follow this site from 1 to have a look

Conditions for permission detection to take effect:

targetSdkVersion and compileSdkVersion upgraded to 23 and above Running Android system 6.0 and above

Three ways to write detection authority:


  public static boolean checkPermission1(Context context, String[] permissions) {
    PackageManager packageManager = context.getPackageManager();
    String packageName = context.getPackageName();

    for (String permission : permissions) {
      int per = packageManager.checkPermission(permission, packageName);
      if (PackageManager.PERMISSION_DENIED == per) {
        Log.w(TAG, "required permission not granted . permission = " + permission);
        return false;
      }
    }
    return true;
  }

  public static boolean checkPermission2(Context context, String[] permissions) {

    for (String permission : permissions) {
      int per =context.checkPermission(permission, Process.myPid(),Process.myUid());
      if (PackageManager.PERMISSION_GRANTED != per) {
        Log.w(TAG, "required permission not granted . permission = " + permission);
        return false;
      }
    }
    return true;
  }

  public static boolean checkPermission3(Context context, String[] permissions) {

    for (String permission : permissions) {
      int per = ContextCompat.checkSelfPermission(context, Manifest.permission.CAMERA);
      if (PackageManager.PERMISSION_GRANTED != per) {
        Log.w(TAG, "required permission not granted . permission = " + permission);
        return false;
      }
    }
    return true;
  }


Related articles: