單純聊一聊iOS10適配
一.工程改動
1. 工程配置
直接使用Xcode8Beta打開工程后,你會發(fā)現(xiàn)你的provisonfile配置出了問題,這是由于在Xcode8中對工程配置有了一些小的改動。
在Xcode8工程配置的general選項卡中,使用更詳細signing選項替換了原有的team選項。
選中:project -> target -> generalXcode8之前team選項
Xcode8之前provisionfile選項

Xcode8之后變更為signing選項
signing選項展開

2. swift版本假如你Xcode7的工程中使用了swift,那么你使用Xcode8一打開工程就會出現(xiàn)下面的選項,選擇convert:

選convert后,會讓你選擇swift的版本。 如果你選擇了3.0版本的swift選項,那等待convert結(jié)束后,一般依然有一部分需要你做手動適配。 假如你暫時不想花費時間做swift版本的適配,你可以選擇swift2.3版本,convert并不會轉(zhuǎn)換任何內(nèi)容,你的項目也可以像以往在Xcode7中那樣正常運行。此時我們選擇swift2.3:

選擇swift版本后,選擇你的工程target:

稍等片刻:

選擇update,結(jié)束收工:

二、應用適配
1. 權(quán)限配置隨著人們對隱私保護的注重,似乎蘋果的每一代產(chǎn)品都有相應的體現(xiàn)——更為嚴格的設(shè)備和數(shù)據(jù)訪問權(quán)限控制。
在iOS10中,如果你的App想要訪問用戶的相機、相冊、麥克風、通訊錄等等權(quán)限,都需要進行相關(guān)的配置,不然會直接crash。
你需要在info.plist中添加你App需要的一些設(shè)備權(quán)限。首先找到info,可以直接在這里添加鍵值對:

也可以找到info.plist文件,然后使用SourceCode方式打開:

一些常用的權(quán)限配置選項:
``` // 相機 <key>NSCameraUsageDescription</key> <string>App需要您的同意,才能訪問相冊</string> // 相冊 <key>NSPhotoLibraryUsageDescription</key> <string>App需要您的同意,才能訪問相機</string> // 麥克風: <key>NSMicrophoneUsageDescription</key> <string>App需要您的同意,才能訪問麥克風</string> // 通信錄 <key>NSContactsUsageDescription</key> <string>App需要您的同意,才能訪問通信錄</string> ``` 其它權(quán)限配置選項: ``` // 位置 <key>NSLocationUsageDescription</key> <string>App需要您的同意,才能訪問位置</string> // 在使用期間訪問位置 <key>NSLocationWhenInUseUsageDescription</key> <string>App需要您的同意,才能在使用期間訪問位置</string> // 始終訪問位置 <key>NSLocationAlwaysUsageDescription</key> <string>App需要您的同意,才能始終訪問位置</string> // 日歷 <key>NSCalendarsUsageDescription</key> <string>App需要您的同意,才能訪問日歷</string> // 提醒事項 <key>NSRemindersUsageDescription</key> <string>App需要您的同意,才能訪問提醒事項</string> // 運動與健身 <key>NSMotionUsageDescription</key> <string>App需要您的同意,才能訪問運動與健身</string> // 健康更新 <key>NSHealthUpdateUsageDescription</key> <string>App需要您的同意,才能訪問健康更新 </string> // 健康分享 <key>NSHealthShareUsageDescription</key> <string>App需要您的同意,才能訪問健康分享</string> // 藍牙 <key>NSBluetoothPeripheralUsageDescription</key> <string>App需要您的同意,才能訪問藍牙</string> // 媒體資料庫 <key>NSAppleMusicUsageDescription</key> <string>App需要您的同意,才能訪問媒體資料庫</string> ```
2. 字體改變
iOS10的字體發(fā)生了變化,這導致一些文字在原有的寬高約束下可能會出現(xiàn)顯示不完整或者留白的情況,需要逐一檢查。參考
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- iOS10適配問題點總結(jié)
- Xcode8下iOS10常見報錯閃退,字體適配和編譯不過的問題及解決方案
- iOS10 Xcode8適配7個常見問題匯總
- iOS開發(fā)之適配iOS10以及Xcode8
- 解析iOS10中的極光推送消息的適配
- Xcode8以及iOS10適配等常見問題匯總(整理篇)
- 兼容iOS 10 升級xcode8出現(xiàn)的問題及一些適配問題的解決方案
- iOS10 App適配權(quán)限 Push Notifications 字體Frame 遇到的問題
- iOS10適配之權(quán)限Crash問題的完美解決方案
- iOS10 適配遠程推送功能實現(xiàn)代碼
- iOS10適配問題收集整理
相關(guān)文章
IOS之構(gòu)造方法與自定義構(gòu)造方法的區(qū)別與實現(xiàn)
本篇文章主要介紹了構(gòu)造方法以及自定義構(gòu)造方法的實現(xiàn),需要的朋友可以參考下2015-07-07
關(guān)于iOS 11的一些新特性適配實踐總結(jié)
iOS 11 為整個生態(tài)系統(tǒng)的 UI 元素帶來了一種更加大膽、動態(tài)的新風格。下面這篇文章主要給大家總結(jié)介紹了關(guān)于iOS 11的一些新特性適配實踐,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。2017-11-11

