티스토리 뷰

IT지식

ios 사진 첨부 기능 주의점

민자르 2017. 2. 1. 17:44
반응형

iOS 사진첨부 기능 화면이 세로 화면 만을 지원하기 때문에 앱 설정이 가로 만을 지원하도록 설정되어 있다면 아래 코드를 추가해야 한다.



가로 화면만 지원하는 앱이면 1, 2, 3 모두 적용해야 한다.

세로 화면도 지원하는 앱이면 1 만 적용하면 된다.



3rd party 를 사용하다보면 기능중에서 사진을 첨부하는 일이 발생한다. 나의 경우는 helpshift 라이브러리를 사용하다가 기능중에서 사진 첨부하는 기능이 있었다. 사진 첨부 버튼만 누르면 가로 앱이 세로로 전환되면서 crash나는 걸 발견하였고 수정하기 위해 여기 저기 검색했지만 마땅한 좋은 방법이 없는 듯 해서 정리해두었다. 


1. info.plist 추가 (iOS 10에서 Privacy 설정)


Privacy - Photo Library Usage Description



사진에 대한 접근 권한을 주는 것이다.

설정하지 않으면

debug에서


This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.


위에 같은 출력 메시지를 볼 수 있다. 그리고 crash가 발생한다.



참고로 카메라를 사용하고 싶을때는 Privacy - Camera Usage Description 설정하면 된다.



2. AppController.mm 추가


@implementation AppController


... 중략 ...


- (UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(nullable UIWindow *)window

{

return UIInterfaceOrientationMaskAll;

}



3. ViewController.mm 추가 ( RootViewController.mm )


- (NSUInteger) supportedInterfaceOrientations

{

return UIInterfaceOrientationMaskLandscape;

}




가로 화면만 지원하는 앱이면 1, 2, 3 모두 적용해야 한다.

세로 화면도 지원하는 앱이면 1 만 적용하면 된다.



728x90
반응형
댓글