카메라 롤을 사용하려면 NSPhotoLibraryUsageDescription 키가 Info.plist에 있어야합니다.


156

최근 에이 오류가 발생하기 시작했습니다.

카메라 롤을 사용하려면 NSPhotoLibraryUsageDescription 키가 Info.plist에 있어야합니다.

React Native를 사용하여 앱을 빌드하고 (ios 기본 개발에 익숙하지 않음) Info.plist 에이 키를 추가하는 방법을 모르겠습니다

예를 게시 할 수 있습니까? 감사

npm 패키지를 사용하고 있습니다 "react-native-camera-roll-picker": "^1.1.7"

여기에 이미지 설명을 입력하십시오


1
Info.plist에 추가 할 내용의 예는 stackoverflow.com/a/39476283/1226963 을 참조하십시오 . 또한 검색 만하면 NSPhotoLibraryUsageDescription많은 예를 찾을 수 있습니다.
rmaddy

답변:


391

@rmaddy 덕분에 Info.plist의 다른 키 문자열 쌍 바로 뒤에 이것을 추가하고 문제를 해결했습니다.

<key>NSPhotoLibraryUsageDescription</key>
<string>Photo Library Access Warning</string>

편집하다:

또한 앱의 다른 구성 요소에서 비슷한 문제가 발생했습니다. Xcode8 / iOS10으로 업데이트 한 후 지금까지 이러한 키를 모두 추가했습니다.

<key>NSPhotoLibraryUsageDescription</key>
<string>This app requires access to the photo library.</string>
<key>NSMicrophoneUsageDescription</key>
<string>This app does not require access to the microphone.</string>
<key>NSCameraUsageDescription</key>
<string>This app requires access to the camera.</string>

등록 정보 목록 키 참조의 전체 목록 을 보려면 이 developer.apple.com 링크를 확인 하십시오.

전체 목록 :

애플 뮤직 :

<key>NSAppleMusicUsageDescription</key>
<string>My description about why I need this capability</string>

블루투스:

<key>NSBluetoothPeripheralUsageDescription</key>  
<string>My description about why I need this capability</string>

달력:

<key>NSCalendarsUsageDescription</key>
<string>My description about why I need this capability</string>

카메라:

<key>NSCameraUsageDescription</key>
<string>My description about why I need this capability</string>

콘택트 렌즈:

<key>NSContactsUsageDescription</key>
<string>My description about why I need this capability</string>

FaceID :

<key>NSFaceIDUsageDescription</key>
<string>My description about why I need this capability</string>

건강 공유 :

<key>NSHealthShareUsageDescription</key>
<string>My description about why I need this capability</string>

건강 업데이트 :

<key>NSHealthUpdateUsageDescription</key>
<string>My description about why I need this capability</string>

홈 키트 :

<key>NSHomeKitUsageDescription</key>
<string>My description about why I need this capability</string>

위치:

<key>NSLocationUsageDescription</key>
<string>My description about why I need this capability</string>

위치 (항상) :

<key>NSLocationAlwaysUsageDescription</key>
<string>My description about why I need this capability</string>

위치 (사용중인 경우) :

<key>NSLocationWhenInUseUsageDescription</key>
<string>My description about why I need this capability</string>

마이크로폰:

<key>NSMicrophoneUsageDescription</key>
<string>My description about why I need this capability</string>

동작 (가속도계) :

<key>NSMotionUsageDescription</key>
<string>My description about why I need this capability</string>

NFC (근거리 통신) :

<key>NFCReaderUsageDescription</key>
<string>My description about why I need this capability</string>

사진 라이브러리 :

<key>NSPhotoLibraryUsageDescription</key>
<string>My description about why I need this capability</string>

사진 라이브러리 (쓰기 전용 액세스) :

<key>NSPhotoLibraryAddUsageDescription</key>
<string>My description about why I need this capability</string>

알림 :

<key>NSRemindersUsageDescription</key>
<string>My description about why I need this capability</string>

시리:

<key>NSSiriUsageDescription</key>
<string>My description about why I need this capability</string>

음성 인식:

<key>NSSpeechRecognitionUsageDescription</key>
<string>My description about why I need this capability</string>

15
"이 응용 프로그램은 사진 라이브러리에 액세스 할 필요가 없습니다."라는 문자열을 사용하고 있습니다.
Daniel T.

info.plist 파일에 키와 문자열을 추가 한 다음 터미널을 사용하여 앱을 빌드하고 이러한 모든 변경 사항이 제거되었습니다. 안내해주세요
Dinesh Vaitage

나는 이것을 추가했지만 여전히 같은 오류로 충돌합니다. 왜 이런 일이 일어나고 있습니까?
fish40

1
이온에서 info.plist 파일을 어디에서 찾을 수 있습니까? 나는 그것을 얻을 수 없습니다.
Anuj

63

내가 가장 좋아하는 방법

1. 열기 info.plist

여기에 이미지 설명을 입력하십시오

2.이 버튼을 클릭하여 새 키를 추가하십시오

여기에 이미지 설명을 입력하십시오

3. 아래로 스크롤하여 개인 정보-사진 라이브러리 사용법 설명 을 찾습니다.

여기에 이미지 설명을 입력하십시오

4. 그것을 선택한 다음 오른쪽에 설명을 추가하십시오

여기에 이미지 설명을 입력하십시오


나는 이것을 추가했지만 여전히 같은 오류로 충돌합니다. 왜 이런 일이 일어나고 있습니까?
fish40

5
@ fish40 아마도 project-target-info를 클릭하고 거기에 추가하고 어떻게되는지 볼 수 있습니까?
밝은 미래

12
당신의 주요한 설명 XD
Fareed Alnamrouti

2
사용법 설명이 간지럽 혔습니다. 내 문제가 너무 행복한 보너스를 수정했습니다!
James Dunne

1
info.plist 파일을 어디에서 찾을 수 있습니까? 나는 그것을 얻을 수 없습니다.
Anuj

17

info.plist 파일에 다음 코드 추가

<key>NSPhotoLibraryUsageDescription</key>
<string>My description about why I need this capability</string>

여기에 이미지 설명을 입력하십시오


2
이것은 내가 필요한 것입니다 ... 마침내 앱 업로드에 성공한 소스 방식으로! TNX :)
BvdVen

이것이 효과가 있다는 것은 이상하지만 다른 방법으로는 효과가 없었습니다. 아마도 xcode 9 베타의 버그 일뿐입니다. 많은 감사합니다 !!!
JohnV

환영합니다, 기쁜 마음으로 도와드립니다.
Dinesh Vaitage

10

info.plist 에이 두 가지를 붙여 넣어야합니다 .iOS 11에서 유일한 방법이었습니다.

    <key>NSPhotoLibraryUsageDescription</key>
    <string>This app requires access to the photo library.</string>

    <key>NSPhotoLibraryAddUsageDescription</key>
    <string>This app requires access to the photo library.</string>

4

카메라 액세스 용 :

<key>NSCameraUsageDescription</key>
<string>Camera Access Warning</string>

1

카메라 롤에서 이미지를 저장하거나 검색하기 위해. 또한 사용자에게 권한을 요청해야합니다. 그렇지 않으면이 오류가 발생하거나 앱이 다운 될 수 있습니다. 이것으로부터 자신을 저장하려면 이것을 info.plist에 추가하십시오.

<key>NSPhotoLibraryAddUsageDescription</key>
<string>This app requires read and write permission from the user.</string>

Xamarin.iOS의 경우

 if you're adding it from the generic editor then "Privacy - Photo Library Additions Usage Description" will be the given option you will find out instead of "NSPhotoLibraryAddUsageDescription".

0

https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html

"Privacy - Photo Library Additions Usage Description" for iOS 11 and later

"Privacy - Photo Library Usage Description" for iOS 6.0 and later

plist 파일 및이 코드 열기

<key>NSPhotoLibraryUsageDescription</key>
<string>This app requires access to the photo library.</string>

<key>NSPhotoLibraryAddUsageDescription</key>
<string>This app requires access to the photo library.</string>

0

Info.plist에 키-문자열 쌍을 추가했지만 ( 위의 Murat의 답변 참조 ) 여전히 오류가 발생하는 경우 현재 작업중인 대상에 키가 있는지 확인하십시오.

제 경우에는 2 가지 목표 (개발 및 개발)가있었습니다. 편집기에서 키를 추가했지만 주요 대상에서만 작동하며 개발 대상에서 테스트 중이었습니다. XCode를 열어야했습니다. 프로젝트> 정보> 개발 대상의 키 페어 추가를 클릭하십시오.


0

IONIC 4 프로젝트에서 며칠 전에 동일한 문제에 직면했습니다. IPA를 업로드 할 때 App Store Connect에서이 경고를 받았습니다.

여기에 이미지 설명을 입력하십시오

"info.plist에 누락 된 목적 문자열"문제를 다음 단계로 수정했습니다. 그것이 당신에게도 효과가 있기를 바랍니다.

  1. "info.plist"파일로 이동하십시오.

여기에 이미지 설명을 입력하십시오

  1. 라는이 키를 찾으십시오 Privacy - Photo Library Usage Description. 존재하지 않는 경우 새 이미지를 추가하고 아래 이미지와 같이 값을 추가하십시오.

여기에 이미지 설명을 입력하십시오

감사.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.