В iOS10 перед тим, як отримати доступ до даних про конфіденційність конфіденційності, як-от "Камера", "Контакти" тощо, потрібно попросити авторизацію, інакше програма перестане працювати, коли ви отримаєте доступ до них. Потім Xcode ввійде так:
Цей додаток вийшов з ладу, оскільки він намагався отримати доступ до конфіденційних даних без опису використання. Info.plist додатка повинен містити NSContactsUsageDescriptionключ зі значенням рядка, що пояснює користувачеві, як додаток використовує ці дані.
Як з цим боротися?
Відкрийте файл у проекті з назвою info.plist, клацніть правою кнопкою миші, відкривши як Source Code, вставте цей код нижче до нього. Або ви можете відкрити info.plistяк Property Listза замовчуванням, натисніть кнопку додати, Xcode дасть вам запропоновані доповнення під час введення Privacy - за допомогою клавіатур ⬆️ і ⬇️.
Не забудьте написати свій опис, чому ви просите про це авторизацію, між <string>і </string>або ваша програма буде відхилена яблуком:
<!-- 🖼 Photo Library -->
<key>NSPhotoLibraryUsageDescription</key>
<string>$(PRODUCT_NAME) photo use</string>
<!-- 📷 Camera -->
<key>NSCameraUsageDescription</key>
<string>$(PRODUCT_NAME) camera use</string>
<!-- 🖼 Write To Image Gallery>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>$(PRODUCT_NAME) save phots in gallry</string>
<!-- 🎤 Microphone -->
<key>NSMicrophoneUsageDescription</key>
<string>$(PRODUCT_NAME) microphone use</string>
<!-- 📍 Location -->
<key>NSLocationUsageDescription</key>
<string>$(PRODUCT_NAME) location use</string>
<!-- 📍 Location When In Use -->
<key>NSLocationWhenInUseUsageDescription</key>
<string>$(PRODUCT_NAME) location use</string>
<!-- 📍 Location Always -->
<key>NSLocationAlwaysUsageDescription</key>
<string>$(PRODUCT_NAME) always uses location </string>
<!-- 📆 Calendars -->
<key>NSCalendarsUsageDescription</key>
<string>$(PRODUCT_NAME) calendar events</string>
<!-- ⏰ Reminders -->
<key>NSRemindersUsageDescription</key>
<string>$(PRODUCT_NAME) reminder use</string>
<!-- 📒 Contacts -->
<key>NSContactsUsageDescription</key>
<string>$(PRODUCT_NAME) contact use</string>
<!-- 🏊 Motion -->
<key>NSMotionUsageDescription</key>
<string>$(PRODUCT_NAME) motion use</string>
<!-- 💊 Health Update -->
<key>NSHealthUpdateUsageDescription</key>
<string>$(PRODUCT_NAME) heath update use</string>
<!-- 💊 Health Share -->
<key>NSHealthShareUsageDescription</key>
<string>$(PRODUCT_NAME) heath share use</string>
<!-- ᛒ🔵 Bluetooth Peripheral -->
<key>NSBluetoothPeripheralUsageDescription</key>
<string>$(PRODUCT_NAME) Bluetooth Peripheral use</string>
<!-- 🎵 Media Library -->
<key>NSAppleMusicUsageDescription</key>
<string>$(PRODUCT_NAME) media library use</string>
<!-- 📱 Siri -->
<key>NSSiriUsageDescription</key>
<string>$(PRODUCT_NAME) siri use</string>
<!-- 🏡 HomeKit -->
<key>NSHomeKitUsageDescription</key>
<string>$(PRODUCT_NAME) home kit use</string>
<!-- 📻 SpeechRecognition -->
<key>NSSpeechRecognitionUsageDescription</key>
<string>$(PRODUCT_NAME) speech use</string>
<!-- 📺 VideoSubscriber -->
<key>NSVideoSubscriberAccountUsageDescription</key>
<string>$(PRODUCT_NAME) tvProvider use</string>
Якщо це не працює, спробуйте запитати фонову авторизацію:
<key>UIBackgroundModes</key>
<array>
<!-- something you should use in background -->
<string>location</string>
</array>
Або перейдіть до target -> Capabilities -> Background Modes -> open the background Modes:

потім очистіть проект, запустіть його.
Перейдіть сюди для отримання додаткової інформації: iOS10AdaptationTips .