Используя iOS 10.0
последнюю бета-версию. Я пытался использовать камеру для сканирования штрих-кода в моем приложении, и он вылетел из-за этой ошибки во время выполнения.
Это приложение упало, потому что оно пыталось получить доступ к конфиденциальным данным без описания использования. Info.plist приложения должен содержать ключ NSCameraUsageDescription со строковым значением, объясняющим пользователю, как приложение использует эти данные.
Поместите этот ключ в список, но он все еще разбился?
Ответы:
После iOS 10 вы должны определить и предоставить описание использования всех конфиденциальных данных системы, к которым обращается ваше приложение, в Info.plist, как показано ниже:
Календарь
Напоминание:
Контакт:
Фото :
Обмен Bluetooth:
Микрофон:
Камера:
Расположение :
Хит:
HomeKit:
Медиа библиотека :
Движение:
Распознавание речи :
SiriKit:
ТВ провайдер:
Вы можете получить подробную информацию по этой ссылке.
источник
Privacy - Photo Library Usage Description
сделал это по ошибкеNSPhotoLibraryUsageDescription
Как Apple изменила, как вы можете получить доступ к любым пользовательским частным типам данных в
iOS 10
.Вам необходимо добавить
Privacy - Camera usage description
ключ " " в ваше приложениеInfo.plist
и информацию об их использовании, которая применима к вашему приложению, как в приведенном ниже примере, который я предоставил для сканирования штрих-кодов.Для получения дополнительной информации, пожалуйста, найдите скриншот ниже.
источник
Вы должны добавить этот ключ ниже в info.plist.
NSCameraUsageDescription
ИлиPrivacy - Camera usage description
И добавить описание использования.
Подробные скриншоты доступны по этой ссылке
источник
Либо откройте Info.plist в качестве исходного кода и добавьте следующее:
источник
"NSCameraUsageDescription" = "Requires access to the camera";
в свой локализованный файл infoPlist.stringsИспользуйте эти необработанные значения и скопируйте в info.plist
источник
Пользовательский интерфейс xcode немного изменился с одной версии на другую, поэтому здесь вы обновляете plist для 9.0 beta 4, если это помогает Project -> Target -> Info
источник
<key>NSCameraUsageDescription</key>
в info.plist .<key>NSCameraUsageDescription</key>
во второй файл info.plist , но безрезультатно , и я могу подтвердить, что XCode (10.1) определенно не учитывает эти изменения, запустив git status потому что мой info.plist для другой цели не изменился. Таким образом, правильный путь заключается в том, чтобы пройти через Project-> Target-> Info . Спасибо чувак!Еще один случай, с которым я столкнулся при попытке использовать камеру, заключался в том, что она все еще была занята сбоями, выдавая то же самое
_CRASHING_DUE_TO_PRIVACY
даже после добавления «Описание использования камеры». После того, как не удалось получить ничего осязаемого из стека вызовов, переключился на «Органайзер» и просмотрел отчеты о сбоях на устройстве. Я обнаружил, что на самом деле он жаловался на неприкосновенность частной жизни из-за отсутствия «Описание использования микрофона». Я добавил это и избавился от такой загадочной поломки.источник
Для тех, кто все еще получает ошибку, даже если вы добавили правильные ключи в Info.plist:
Убедитесь, что вы добавляете ключ в правильный Info.plist. Более новая версия xCode, по-видимому, имеет 3 Info.plist.
Один находится в папке с именем вашего приложения, что решило проблему для меня.
Второй находится под YourappnameTests, а третий находится под YourappnameUITests.
Надеюсь, поможет.
источник
Если вы используете Ionic, вы можете решить эту проблему напрямую из config.xml , добавив внутри тега ios платформы:
Я бы тоже хотел поблагодарить @BHUPI за ответ.
источник
Вы делаете это, добавляя ключ использования в Info.plist вашего приложения вместе со строкой назначения. NSCameraUsageDescription Указывает причину доступа вашего приложения к камере устройства.
https://developer.apple.com/library/content/documentation/General/Reference/InfoPlistKeyReference/Articles/CocoaKeys.html
источник
Я проверил plist и обнаружил, что он не работает, только в информации о проекте, вам нужно добавить «Privacy - Camera ....», тогда он должен работать. Надеюсь помочь вам.
источник
У меня была такая же проблема, и я не мог найти решение. Mark90 прав, есть много файлов info.plist, и вы должны отредактировать правильный. Перейдите в Project, в разделе TARGETS выберите проект (не тесты), на панели вкладок выберите Info и добавьте разрешение в « Custom Target Properties ».
источник