public static void requestPermissions()

in app/src/main/java/org/apache/fineract/utils/CheckSelfPermissionAndRequest.java [83:117]


    public static void requestPermissions(final AppCompatActivity activity,
            final String[] permissions,
            final int permissionRequestCode,
            final String[] dialogMessageRetry,
            final String[] messageNeverAskAgain,
            final String[] permissionDeniedStatus) {

        for (int i = 0; i < permissions.length; ++i) {

            if (ActivityCompat.shouldShowRequestPermissionRationale(activity, permissions[i])) {

                // Show an explanation to the user *asynchronously* -- don't block
                // this thread waiting for the user's response! After the user
                // sees the explanation, try again to request the permission.
                new MaterialDialog.Builder().init(activity)
                        .setTitle(R.string.dialog_permission_denied)
                        .setMessage(dialogMessageRetry[i])
                        .setPositiveButton(R.string.dialog_action_re_try,
                                new DialogInterface.OnClickListener() {
                                    @Override
                                    public void onClick(DialogInterface dialog, int which) {
                                        ActivityCompat.requestPermissions(activity, permissions,
                                                permissionRequestCode);
                                    }
                                })
                        .setNegativeButton(R.string.dialog_action_i_am_sure)
                        .createMaterialDialog()
                        .show();
            } else {
                requestSinglePermissions(activity, permissions, permissionRequestCode,
                        messageNeverAskAgain[i], permissionDeniedStatus[i]);
            }

        }
    }