1、iOS10相冊相機閃退bug:
iOS10系統下調用系統相冊,相機功能,遇到閃退的情況,描述如下:
This app has crashed because it attempted to access privacy-sensitive data without a usage description.The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data.
修復方法:
(1)在info.plist文件下添加一下代碼:
相機權限
<key>NSCameraUsageDescription</key>
<string>cameraDesciption</string>
相冊權限
<key>NSPhotoLibraryUsageDescription</key>
<string>photoLibraryDesciption</string>
在網上還有一個說法,跟上述幾乎一樣只不過多設置了兩項權限:
(2)你需要在info.plist文件 添加一個“NSContactsUsageDescription ”的Key,Value添加一個描述。需要在應用的info.plist里加入(使用source code模式):
<key>NSCameraUsageDescription</key>
<string>cameraDesciption</string>
<key>NSContactsUsageDescription</key>
<string>contactsDesciption</string>
<key>NSMicrophoneUsageDescription</key>
<string>microphoneDesciption</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>photoLibraryDesciption</string>
2、iOS10因蘋果健康導致閃退crash
如果在app中調用了蘋果健康,iOS10中會出現閃退。控制台報錯的原因是:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'NSHealthUpdateUsageDescription must be set in the app's Info.plist in order to request write authorization.'
這是因為我們要在info.plist文件中聲明蘋果的使用權限,所以在info.plist中添加一下key就可以l
請求寫入:
<key>NSHealthUpdateUsageDescription</key>
<string>some string value stating the reason</string>
請求讀取
<key>NSHealthShareUsageDescription</key>
<string>some string value stating the reason</string>
另外附加一些其他權限描述:
相機權限描述:
<key>NSCameraUsageDescription</key>
<string>cameraDesciption</string>
通訊錄
<key>NSContactsUsageDescription</key>
<string>contactsDesciption</string>
麥克風
<key>NSMicrophoneUsageDescription</key>
<string>microphoneDesciption</string>
相機
<key>NSPhotoLibraryUsageDescription</key>
<string>photoLibraryDesciption</string>
3、iOS10配置須知
在iOS10中,如果你的App想要訪問用戶的相機、相冊、麥克風、通訊錄等等權限,都需要進行相關的配置,不然會直接crash。
需要在info.plist中添加App需要的一些設備權限。
NSBluetoothPeripheralUsageDescription
訪問藍牙
NSCalendarsUsageDescription
訪問日歷
NSCameraUsageDescription
相機
NSPhotoLibraryUsageDescription
相冊
NSContactsUsageDescription
通訊錄
NSLocationAlwaysUsageDescription
始終訪問位置
NSLocationUsageDescription
位置
NSLocationWhenInUseUsageDescription
在使用期間訪問位置
NSMicrophoneUsageDescription
麥克風
NSAppleMusicUsageDescription
訪問媒體資料庫
NSHealthShareUsageDescription
訪問健康分享
NSHealthUpdateUsageDescription
訪問健康更新
NSMotionUsageDescription
訪問運動與健身
NSRemindersUsageDescription
訪問提醒事項
暫時先總結這么多,繼續搜集……