private boolean showRationaleForRequest(Permissive.Request request) { Activity activity = request.getContext(); if (null == activity) { return false; } final String[] rationalePermissions = Permissive.getPermissionsRequiringRationale(activity, request.getPermissions()); if (request.shouldDisplayRationale()) { final PermissiveMessenger messenger = new PermissiveMessenger(handler, request.getPermissions()); return request.showRationale(rationalePermissions, messenger) && !request.rebuild; } return false; }