iOS 10 開發適配系列 之 許可權Crash問題
阿新 • • 發佈:2019-02-06
升級 iOS 10 之後目測坑還是挺多的,記錄一下吧,看看到時候會不會成為一個系列。
直入正題吧
今天在寫 Swift 3 相關的一個專案小小練下手,發現呼叫相機,崩了。試試看呼叫相簿,又特麼崩了。然後看到控制檯輸出了以下資訊: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.
意思就是說,你需要在 info.plist 檔案新增一個 NSPhotoLibraryUsageDescription
的 key,然後新增一個描述。
解決方案
1.在專案中找到info.plist
檔案,右鍵點選以 Source Code
形式開啟
2.新增以下鍵值對,這裡以 PhotoLibrary 作為例子
<key>NSPhotoLibraryUsageDescription</key>
<string>此 App 需要您的同意才能讀取媒體資料庫</string>
注意,key 是絕對不能寫錯的,
而 value 也就是<string></string>你可以隨意寫
附圖
圖片發自簡書App
目測所有需要的許可權描述都會在 iOS 10 beta裡面crash,不用怕,控制檯會有輸出的,自行新增就 OK,我另外附送幾個 key/value 給你們
<key>NSCameraUsageDescription</key>
<string>cameraDesciption</string>
<key>NSContactsUsageDescription</key>
<string>contactsDesciption</string >
<key>NSMicrophoneUsageDescription</key>
<string>microphoneDesciption</string>
嗯,然後 clean 一下,重新執行。
當然我比較推薦的做法是直接info.plist
還是用 Property List
的形式,然後點選新增, 就是滑動到最後一個 item 會出現一個小加號
輸入 Privacy 可以迅速定位到這一許可權系列,找到你需要的許可權,修改後面的 value 就可以了
文/wzbdroid(簡書作者)
原文連結:http://www.jianshu.com/p/c212cde86877
著作權歸作者所有,轉載請聯絡作者獲得授權,並標註“簡書作者”。