1. 程式人生 > >iOS 11 NSPhotoLibraryAddUsageDescription 錯誤的解決辦法

iOS 11 NSPhotoLibraryAddUsageDescription 錯誤的解決辦法

今天除錯專案時有一個生成 UIView 的圖片並儲存到本地的功能,一點發現閃退了。發現 Xcode 報以下錯誤:

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

好吧,原來是跟 iOS 10 儲存圖片、呼叫相機一樣, Info.plist 裡面要涉及隱私資料時要新增一句“提示語”。於是開啟 Info.plist,點選 + 號,在 Key 中輸入:Privacy - Photo Library Additions Usage Description,Type 選擇 String,Value 中輸入你的提示語。再次 Build,執行,OK!


Info.plist 中的隱私設定

Google 了一下,發現這是 iOS 11 新出的一條隱私規則,說明如下:


 iOS 11 新增的隱私設定

iOS 11 中新加的還有一個 NFCReaderUsageDescription,可能跟 NFC 裝置有關,不過暫時沒接觸到。

提醒大家在 iOS 11 適配時要注意各種小坑,不然 App 很有可能莫名其妙閃退。