Android M 一次请求多个权限

Android M Request Multiple permission at a single time

您好,我正在更新我的应用程序 jaffna Temples。这样它就可以支持 Android M 设备(v 6.0 及更高版本)。

有没有办法可以一次请求多个权限。 eg:我想获得同时读取phone状态和位置信息的权限。

通过这种方式,我可以一一请求权限。但我想在应用程序开始时立即取消这两个权限。

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        if (checkSelfPermission(Manifest.permission.READ_PHONE_STATE)
                != PackageManager.PERMISSION_GRANTED) {
            requestPermissions(new String[]{Manifest.permission.READ_PHONE_STATE},
                    PERMISSIONS_REQUEST_READ_PHONE_STATE);
        } else {
            setPhoneDetails();
        }
    }

请给我一些建议。 Tnx.

Is there a way i can request multiple permission at a single time

在要传递给 requestPermissions()String[] 中放置多个权限。

比如在this sample project中,我静态定义了权限的集合,如:

  private static final String[] PERMS_TAKE_PICTURE={
    CAMERA,
    WRITE_EXTERNAL_STORAGE
  };

以便我稍后可以请求这些权限:

ActivityCompat.requestPermissions(this, PERMS_TAKE_PICTURE,
    RESULT_PERMS_INITIAL);