반응형
안드로이드 6.0 마시멜로우 에서 부터 나오는 화면 입니다.
이거 처리 안 하면 저장 도 안 되고 갤러리에서 이미지도 못 가져 옵니다.
이걸 매번 처리 할때 마다 같은 함수 쓰고 있었는데요
https://github.com/tajchert/Nammu
위 사이트에 가서 gradle 추가 하고 설치 하면 복잡한 거 필요 없고
이것만 있으면
안드로이드 6.0 이상 퍼미션은 금방 해결이 된다.
final PermissionCallback permissionContactsCallback = new PermissionCallback() { | |
@Override public void permissionGranted() { | |
boolean hasAccess = Tools.accessContacts(MainActivity.this); | |
Toast.makeText(MainActivity.this, "Access granted = " + hasAccess, Toast.LENGTH_SHORT).show(); | |
} | |
@Override public void permissionRefused() { | |
boolean hasAccess = Tools.accessContacts(MainActivity.this); | |
Toast.makeText(MainActivity.this, "Access granted = " + hasAccess, Toast.LENGTH_SHORT).show(); | |
} | |
}; |
정의를 먼저 하고
if (Nammu.checkPermission(Manifest.permission.READ_CONTACTS)) { | |
//We have a permission, easy peasy | |
boolean hasAccess = Tools.accessContacts(this); | |
Toast.makeText(this, "Access granted = " + hasAccess, Toast.LENGTH_SHORT).show(); | |
} else { | |
//We do not own this permission | |
if (Nammu.shouldShowRequestPermissionRationale(this, Manifest.permission.READ_CONTACTS)) { | |
//User already refused to give us this permission or removed it | |
//Now he/she can mark "never ask again" (sic!) | |
Snackbar.make(mLayout, "Here we explain user why we need to know his/her contacts.", | |
Snackbar.LENGTH_INDEFINITE).setAction("OK", new View.OnClickListener() { | |
@Override public void onClick(View view) { | |
Nammu.askForPermission(MainActivity.this, Manifest.permission.READ_CONTACTS, | |
permissionContactsCallback); | |
} | |
}).show(); | |
} else { | |
//First time asking for permission | |
// or phone doesn't offer permission | |
// or user marked "never ask again" | |
Nammu.askForPermission(this, Manifest.permission.READ_CONTACTS, permissionContactsCallback); | |
} | |
}
|
이런식으로 클릭을 했을 때 바로 띄워 줄수도 있고
처음 시작 할때 미리 체크 할 수도 있습니다..
permissionContactsCallback 이 함수에서 체크 했나 안 했나를 리턴 받아서 처리 하면 됩니다.
반응형
'IT > 모바일' 카테고리의 다른 글
안드로이드 앱 아이디어 - 아이돌 노래 퀴즈 1 초 듣고 제목 맞추기 (0) | 2019.10.22 |
---|---|
Android Chat Application using FCM (Firebase Cloud Messaging ) (0) | 2017.03.14 |
MediaProjection api 를 이용한 동영상 찍기 오픈 소스 (0) | 2016.05.11 |
모바일앱 링크 모아를 소개 합니다. (0) | 2016.04.18 |
어린이용 기억력 게임 - 기억력 향샹,어린이,유아 앱 출시 (2) | 2016.03.16 |