
flutter 개발시 권한 획득하기 (camera, storage 등의 권한 획득 방법)
FE/Flutter2023. 10. 1. 12:58permission_hanlder 라이브러리
flutter 에서 카메라와 같이 기기 권한 획득을 위해 편리하게 사용할 수 있는 라이브러리가 있습니다.
본 글에서는 permission_hanlder
라이브러리를 사용하면 쉽게 권한 획득을 할 수 있기 때문에, 해당 라이브러리를 사용해서 권한 획득하는 방법에 대해 소개합니다. 우선 아래 명령어를 통해 설치합니다.
flutter pub add permission_handler
권한 획득하기
가이드 문서에도 설명이 잘되어 있으나 간단하게 정리하면, 아래와 같이 권한 획득 요청을 할 수 있습니다.
if (await Permission.camera.request().isGranted) {
// 권한 획득에 성공했을때에 대한 처리 로직
} else {
// 실패한 경우에 대한 처리 로직
}
만약, location 에 대한 권한을 획득하고 싶다면, 아래와 같이 하면 됩니다.
if (await Permission.location.request().isGranted) {
//...
}
Trouble Shooting
Android13에서 storage 권한 획득
android13에서 앱 개발을 하다가 파일을 쓰는 작업이 필요하여 await Permission.storage.request()
를 이용하여 권한 획득 요청을 했으나, 무조건 PermissionStatus.permanentlyDenied
를 반환하는 이슈가 있었습니다.
AndroidManifest.xml
에 빠진 권한이 있는지 확인해 봤으나 문제는 없어 보였습니다.
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
권한 획득이 안돼서 검색하다보니 permission_handler
github 의 올라온 이슈에 동일한 현상이 있어서 확인해봤습니다.
android13에서는 파일을 쓰기위해서 권한을 요청할 필요없이 스토리지에 접근이 가능하다는 것을 알았습니다.
permission_handler not working in android13. · Issue #1026 · Baseflow/flutter-permission-handler
💬 Questions and Help in my app permission handler is perfectly work on android 12 and below, but in Android 13 its not working. popup message for granting access is not shown. i have added all user...
github.com
Reference
permission_handler | Flutter Package
Permission plugin for Flutter. This plugin provides a cross-platform (iOS, Android) API to request and check permissions.
pub.dev
'FE > Flutter' 카테고리의 다른 글
Flutter에서 WidgetsFlutterBinding.ensureInitialized() 역할 (0) | 2024.05.03 |
---|---|
Named Routing을 사용한 라우팅(화면전환) 방법 (Flutter) (0) | 2023.12.03 |
Flutter(플러터) 설치 및 개발 환경 만들기 (0) | 2023.11.07 |
flutter 프로젝트에 커스텀 폰트(font) 적용하기 (0) | 2023.09.29 |
flutter에서 webview 사용하기 (webview_flutter 라이브러리 사용) (0) | 2023.09.28 |
IT 기술에 대한 글을 주로 작성하고, 일상 내용, 맛집/숙박/제품 리뷰 등 여러가지 주제를작성하는 블로그입니다. 티스토리 커스텀 스킨도 개발하고 있으니 관심있으신분은 Berry Skin을 검색바랍니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!