Skip to content

Instantly share code, notes, and snippets.

@muthuraj57
Last active June 28, 2019 09:47
Show Gist options
  • Save muthuraj57/2855886d551fbc1f2e0f497c6db26c3b to your computer and use it in GitHub Desktop.
Save muthuraj57/2855886d551fbc1f2e0f497c6db26c3b to your computer and use it in GitHub Desktop.
// Here, thisActivity is the current activity
if (ContextCompat.checkSelfPermission(thisActivity,
Manifest.permission.READ_CONTACTS)
!= PackageManager.PERMISSION_GRANTED) {
// Should we show an explanation?
if (ActivityCompat.shouldShowRequestPermissionRationale(thisActivity,
Manifest.permission.READ_CONTACTS)) {
// Show an expanation 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.
} else {
if(isFirstTimeAskingPermission(thisActivity, Manifest.permission.READ_CONTACTS){
firstTimeAskingPermission(thisActivity, Manifest.permission.READ_CONTACTS, false);
// No explanation needed, we can request the permission.
ActivityCompat.requestPermissions(thisActivity,
new String[]{Manifest.permission.READ_CONTACTS},
MY_PERMISSIONS_REQUEST_READ_CONTACTS);
// MY_PERMISSIONS_REQUEST_READ_CONTACTS is an
// app-defined int constant. The callback method gets the
// result of the request.
} else {
//Permission disable by device policy or user denied permanently. Show proper error message
}
}
} else {
//permission granted. do your stuff
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment