Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 코루틴
- 코틀린
- dart
- Gradle
- build
- image
- 에러
- Android
- 스튜디오
- RecyclerView
- coroutine
- 안드로이드 스튜디오
- Github
- 의존성주입
- studio
- 안드로이드
- 레트로핏
- 안드로이드스튜디오
- Retrofit
- viewpager
- error
- 안스
- 웹뷰
- ADB
- Kotlin
- WebView
- MVVM
- 깃헙
- 유튜브
- GIT
Archives
- Today
- Total
코딩하는 일용직 노동자
Dexter - 퍼미션 라이브러리 본문
안드로이드 퍼미션 라이브러리가 여럿 있습니다. 오늘 소개해드릴 라이브러리는 Dexter입니다.
박상권님이 만드신 TedPermission 만큼이나 사용이 편리합니다.
우선 gradle 에 아래처럼 추가해줍니다.
dependencies{
implementation 'com.karumi:dexter:6.2.1'
}
Single Permission인 경우 아래처럼 처리합니다.
-Java
Dexter.withContext(this)
.withPermission(Manifest.permission.CAMERA)
.withListener(new PermissionListener() {
@Override public void onPermissionGranted(PermissionGrantedResponse response) {/* ... */}
@Override public void onPermissionDenied(PermissionDeniedResponse response) {/* ... */}
@Override public void onPermissionRationaleShouldBeShown(PermissionRequest permission, PermissionToken token) {/* ... */}
}).check();
-Kotlin
Dexter.withContext(this)
.withPermission(Manifest.permission.CAMERA)
.withListener(object : PermissionListener {
override fun onPermissionGranted(response: PermissionGrantedResponse) {
/* ... */
}
override fun onPermissionDenied(response: PermissionDeniedResponse) {
/* ... */
}
override fun onPermissionRationaleShouldBeShown(
permission: PermissionRequest?,
token: PermissionToken?) {
/* ... */
}
}).check()
Multi Permission인 경우 아래처럼 처리합니다.
-Java
Dexter.withContext(this)
.withPermissions(
Manifest.permission.CAMERA,
Manifest.permission.READ_CONTACTS,
Manifest.permission.RECORD_AUDIO
).withListener(new MultiplePermissionsListener() {
@Override public void onPermissionsChecked(MultiplePermissionsReport report) {/* ... */}
@Override public void onPermissionRationaleShouldBeShown(List<PermissionRequest> permissions, PermissionToken token) {/* ... */}
}).check();
-Kotlin
Dexter.withContext(this)
.withPermissions(
Manifest.permission.CAMERA,
Manifest.permission.READ_CONTACTS,
Manifest.permission.RECORD_AUDIO
).withListener(object : MultiplePermissionsListener {
override fun onPermissionsChecked(report: MultiplePermissionsReport) {
/* ... */
}
override fun onPermissionRationaleShouldBeShown(
permissions: List<PermissionRequest>,
token: PermissionToken
) {
/* ... */
}
}).check()
더 자세한 사용법은 아래 링크에서 확인할 수 있습니다.
https://github.com/Karumi/Dexter
'안드로이드' 카테고리의 다른 글
안드로이드 스튜디오 4.1 업데이트 후 kotlin-android-extensions를 수동으로 추가해야함. (0) | 2020.10.25 |
---|---|
Android Studio v4.1 Release (0) | 2020.10.13 |
Jetpack compose 너는 또 뭐냐? (0) | 2020.09.05 |
Git .gitignore 파일 적용하기. (0) | 2020.09.03 |
Bitbucket access denied 해결법 (0) | 2020.09.03 |