seong_hye, the developer

SwiftUI) 이미지(사진) 권한 설정에 대해 알아보기 본문

IOS/SwiftUI

SwiftUI) 이미지(사진) 권한 설정에 대해 알아보기

seong_hye 2025. 7. 15.


📘 이미지(사진) 권한 설정

iOS에서는 앱에 사진 창 또는 카메라를 사용하려고 할 때 권한 창을 통해 사용자의 동의를 얻어야만 한다

권한 창을 띄우고 사용하는 방법에 대해 알아보려 한다

 


🔹 Info.plist에 권한 문구 추가 / Info 설정 창에서 권한 추가

➡️ Info.plist에 사용될 키

키 이름 설명
NSPhotoLibraryUsageDescription 포토 라이브러리 읽기 / 저장 권한 요청 시 표시
NSCameraUsageDescription 카메라 사용 시 표시
NSPhotoLibraryAddUsageDescription 사진 라이브러리에 저장만 하는 경우

 

➡️ Info 설정 창

Info.plist가 아닌 Targets > Info 창에서 권한을 추가하는 방법


🔹 권한 요청 및 상태 확인

Photos 프레임 워크에 접근해 접근 권한에 대해 요청하고 현재 상태를 받아올 수 있도록 함

import Photos 

func checkPhotosPermission() {
	switch PHPhotoLibrary.authorizationStatus(for: .readWrite) {
    case .authorized, .limited:
    	print("이미 권한 허용됨")
    case .notDetermined:
		PHPhotoLibrary.reqeustAuthorization(for: .readWrtie) { status in
    		if status == .authorized || status == .limited {
            	print("권한 허용됨")
            } else {
            	print("권한 거부됨")
            }
    case .denied, .restricted:
    	print("권한 거부됨 - 설정에서 변경 필요")
    default:
    	break
    }
}

🔹 권한 거부 후 다시 접근하게 될 경우 설정 앱 열기

앱의 설정을 거부한 상태일 때 다시 권한을 받아야할 때 권한 창을 여는 것이 아닌

설정 앱으로 이동하여 권한을 받을 수 있도록 해야 함

if let url = URL(string: UIApplication.openSettingURLString) {
	UIApplication.shared.open(url)
}

 

'IOS > SwiftUI' 카테고리의 다른 글

Error)  (0) 2025.08.12
Swift) Image Crop에 대해 정리하기  (0) 2025.07.28
SwiftUI) 번역 기능  (0) 2025.07.08
image 활용법  (0) 2025.06.25
Swift) Rx에 대해서 작성하기  (0) 2025.01.08
Comments