Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import android.Manifest;
- import android.app.Activity;
- import android.content.pm.PackageManager;
- import android.support.v4.app.ActivityCompat;
- import android.support.v4.content.ContextCompat;
- import android.widget.Toast;
- public class MarshMallowPermission {
- public static final int CAMERA_PERMISSION_REQUEST_CODE = 1;
- public static final int RECEIVE_SMS_PERMISSION_REQUEST_CODE = 2;
- public static final int APP_PERMISSION_REQUEST_CODE = 3;
- public static final int WriteAndReadExternalStorage_PERMISSION_REQUEST_CODE = 4;
- public static final int RECORDAUDIO_AND_RECORDVIDEO_PERMISSION_REQUEST_CODE = 5;
- Activity activity;
- public MarshMallowPermission(Activity activity) {
- this.activity = activity;
- }
- public boolean checkPermissionForCamera() {
- int result = ContextCompat.checkSelfPermission(activity, Manifest.permission.CAMERA);
- if (result == PackageManager.PERMISSION_GRANTED) {
- return true;
- } else {
- return false;
- }
- }
- public boolean checkPermissionForReceiveSMS() {
- int result = ContextCompat.checkSelfPermission(activity, Manifest.permission.RECEIVE_SMS);
- if (result == PackageManager.PERMISSION_GRANTED) {
- return true;
- } else {
- return false;
- }
- }
- public boolean checkPermissionForRecordAudio() {
- int result = ContextCompat.checkSelfPermission(activity, Manifest.permission.RECORD_AUDIO);
- if (result == PackageManager.PERMISSION_GRANTED) {
- return true;
- } else {
- return false;
- }
- }
- public boolean checkPermissionForWriteAndReadExternalStorage() {
- int result = ContextCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);
- if (result == PackageManager.PERMISSION_GRANTED) {
- return true;
- } else {
- return false;
- }
- }
- public void requestPermissionForCamera() {
- if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.CAMERA)) {
- Toast.makeText(activity, "Without profile picture you can not register!", Toast.LENGTH_LONG).show();
- } else {
- ActivityCompat.requestPermissions(activity, new String[]{ Manifest.permission.CAMERA,Manifest.permission.WRITE_EXTERNAL_STORAGE}, CAMERA_PERMISSION_REQUEST_CODE);
- }
- }
- public void requestPermissionForReceiveSMS() {
- if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.RECEIVE_SMS)) {
- Toast.makeText(activity, "Receive SMS permission needed for automatic OTP verification. Please allow in App Settings for additional functionality.", Toast.LENGTH_LONG).show();
- ActivityCompat.requestPermissions(activity, new String[]{ Manifest.permission.RECEIVE_SMS}, RECEIVE_SMS_PERMISSION_REQUEST_CODE);
- } else {
- ActivityCompat.requestPermissions(activity, new String[]{ Manifest.permission.RECEIVE_SMS}, RECEIVE_SMS_PERMISSION_REQUEST_CODE);
- }
- }
- public void requestForRequiredPermission() {
- ActivityCompat.requestPermissions(activity, new String[]{ Manifest.permission.RECEIVE_SMS, Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.RECORD_AUDIO}, APP_PERMISSION_REQUEST_CODE);
- }
- public void requestPermissionForWriteAndReadExternalStorage() {
- if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
- Toast.makeText(activity, "You can not able to view media file.", Toast.LENGTH_LONG).show();
- } else {
- ActivityCompat.requestPermissions(activity, new String[] { Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE }, WriteAndReadExternalStorage_PERMISSION_REQUEST_CODE);
- }
- }
- public void requestPermissionForRecordAudio() {
- if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.RECORD_AUDIO)) {
- Toast.makeText(activity, "You can not able to record media file.", Toast.LENGTH_LONG).show();
- } else {
- ActivityCompat.requestPermissions(activity, new String[] { Manifest.permission.RECORD_AUDIO, }, RECORDAUDIO_AND_RECORDVIDEO_PERMISSION_REQUEST_CODE);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement