I would like to know how to add multiple permissions on a single request. This is regarding the Marshmallow version of android.

You need to create an arraylist of permission required
List<String> permissionsNeeded = new ArrayList<String>();
final List<String> permissionsList = new ArrayList<String>();
if (!addPermission(permissionsList, Manifest.permission.READ_PHONE_STATE))
permissionsNeeded.add("android.permission.READ_PHONE_STATE");
if (!addPermission(permissionsList, Manifest.permission.WRITE_EXTERNAL_STORAGE))
permissionsNeeded.add("android.permission.WRITE_EXTERNAL_STORAGE");
// addPermission
private boolean addPermission(List<String> permissionsList, String permission) {
if (ContextCompat.checkSelfPermission(LoginActivity.this, permission) != PackageManager.PERMISSION_GRANTED) {
permissionsList.add(permission);
// Check for Rationale Option
if (!ActivityCompat.shouldShowRequestPermissionRationale(LoginActivity.this, permission))
return false;
}
return true;
}
Similarly add all your permissions in array list.
// now request permission
ActivityCompat.requestPermissions(context,
permissionsList.toArray(new String[permissionsList.size()]),
PERMISSIONS_REQUEST_CODE);
来源:https://stackoverflow.com/questions/40463010/how-to-add-multiple-permissions-in-the-permissions-request