iOS10 각종 사용자 데이터 접근하려면 목적 설명을 추가해야 한다

2016-09-20
118 Views

사진첩이나 달력등의 사용자 데이터에 접근하려면 iOS10부터는 필수적으로 접근에 필요한 목적을 입력해야 한다.

대상 기준 : 키

  • 미디어 라이브러리 접근 : NSAppleMusicUsageDescription
  • 블루투스 인터페이스 접근 : NSBluetoothPeripherealUsageDescription
  • 달력 접근 : NSCalendarUsageDescription
  • 카메라 접근 : NSCameraUsageDescription
  • 연락처에 접근 : NSContactsUsageDescription
  • 헬스 데이터 접근 : NSHealthShareUsageDescription
  • 건강 데이터 접근 : NSHealthUpdateUSageDescription
  • HomeKit 설정 데이터 접근 : NSHomeKitUsageDescription
  • 위치정보 접근 (항상 허용) :  NSLocationAlwaysUsageDescription
  • 위치정보 접근 (사용할 경우만) : NSLocationWhenInUseUsageDescription
  • 마이크 접근 : NSMicrophoneUsageDescription
  • 사진 라이브러리 접근 : NSPhotoLibraryUsageDescription

이를 대응하지 않는 경우 아래와 같은 오류가 발생한다.

오류가 발생하면 Xcode콘솔에 다음과 같은 메시지가 출력된다.

위 오류를 해결하려면 키와 사용목적을 Info.plist파일에 추가한다. 예로 사진 라이브러리에 접근을 하려면 NSPhotoLibraryUsageDescription키를 사용한다.

Info.plist 파일에 값을 추가한후 다시 사진라이브러리를 호출하면 접근을 요구하는 경고창이 나온다. Info.plist파일에 작성한 “사용목적”이 경고창에 표시된다.

firebase-ios-private-option

firebase-option

참고자료: Cocoa Keys

 

Facebook Comments

You may be interested

모바일 앱 아키텍처
Swift
shares2 views
Swift
shares2 views

모바일 앱 아키텍처

MJ Kim - 4월 22, 2017

이 내용은 나름대로 개발해본 내용을 토대로 정리해본 모바일 앱 아키텍처에 대한 내용이다. 이를 정리한 이유는 오래된 아키텍처부터 최근 아키텍처까지 정리해보고…

시간차를 얻는 Date Extension
Swift 3.0
shares5 views
Swift 3.0
shares5 views

시간차를 얻는 Date Extension

MJ Kim - 4월 12, 2017

사용자가 남길 내용에 대한 시간표시를 할 때 일정한 시간차를 표현해주는 경우가 있어 이에 대한 Date Extention을 정리해 보았다. [crayon-58fada0701073618378182/]  

Swift 3.1에서 없어진 문법 정리
Swift 3.0
shares32 views
Swift 3.0
shares32 views

Swift 3.1에서 없어진 문법 정리

MJ Kim - 3월 31, 2017

Swift언어는 무엇인가 나올때마다 없어지는 것들이 있어, Swift 3.1에서 컴파일할 수 없게 된 문법내용을 정리했다. switch문을 사용하여 enum에서 protocol을 여러가지 패턴으로…