問題出現描述:項目在開發時使用的是Xcode7,後來維護項目時使用Xcode8.2打開運行,發現在通訊錄中報錯如下:
2017-xx-xx xx:xx:xx.xxxxxx xx[6077:133155] [Access] This app has crashed because it attempted to Access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSContactsUsageDescription key with
a string value explaining to the user how the app uses this data.
同時發現調用相冊時也會有類似問題,報錯如下:
2017-xx-xx xx:xx:xx.xxxxxx xx[6077:133155] [Access] 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.
(lldb)
as錯誤信息譯文分別是
1:此應用程序崩潰,因為它試圖訪問隱私敏感的數據,而無需使用說明。應用程序的Info.plist必須包含一個字符串值,解釋如何使用這些數據的應用程序的用戶NSContactsUsageDescription關鍵。
2:此應用程序崩潰,因為它試圖訪問隱私敏感的數據,而無需使用說明。應用程序的Info.plist必須包含一個字符串值,解釋如何使用這些數據的應用程序的用戶NSPhotoLibraryUsageDescription關鍵。
這個問題解決是要配置文件Info.plist中添加信息描述。在理解一下swift3.0代碼略有變化,我在網上查閱資料發現這個問題出現的原因,原來由於開發工具升級,要求在訪問通訊錄、相機、相冊等權限時,需要在配置文件Info.plist中添加描述,我的解決問題添加描述如下圖 <key>NSContactsUsageDescription</key>
<string>contactsDesciption</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>photoLibraryDesciption</string>
<key>NSCameraUsageDescription</key>
<string>cameraDesciption</string>
在配置文件Info.plist中添加描述信息,可以直接輸入Privacy,會有目錄提示,可以找到你要的權限,如圖:
以上就是IOS [access] This app has crashed because ……的全文介紹,希望對您學習和使用ios應用開發有所幫助.
【ios [access] This app has crashed because ……】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!