iOS 10的一大變化是更強的隱私數據保護。在文檔中是這麼描述的:
You must statically declare your app’s intended use of protected data classes by including the appropriate purpose string keys in your Info.plist file.
簡單的說訪問用戶數據都需要現在Info.plist中聲明,否則會crash。
這些用戶數據包括:
Contacts, Calendar, Reminders, Photos, Bluetooth Sharing, Microphone, Camera, Location, Health, HomeKit, Media Library, Motion, CallKit, Speech Recognition, SiriKit, TV Provider.
10之前只需要獲取位置時配置,現在更嚴格了,比如需要調用相冊訪問權限,也需要在Info.plist中配置privacy。
好在這些key的名字在Xcode 8中已經有了自動補全。添加一個屬性,輸入Privacy後就會出現自動提示:
後面填的string會在彈出用戶允許時展示在描述裡。謝謝@Nidom提醒,如果描述空著提交AppStore時會拒絕。
歡迎關注我的微博:@沒故事的卓同學
相關鏈接:
原文:Privacy Settings in iOS 10
WWDC 2016 Session 709 Engineering Privacy for Your Users
Full list of Info.plist keys