iOS10適配(必看)
一.工程改動(dòng)
1. 工程配置
直接使用Xcode8Beta打開(kāi)工程后,你會(huì)發(fā)現(xiàn)你的provisonfile配置出了問(wèn)題,這是由于在Xcode8中對(duì)工程配置有了一些小的改動(dòng)。
在Xcode8工程配置的general選項(xiàng)卡中,使用更詳細(xì)signing選項(xiàng)替換了原有的team選項(xiàng)。
選中:project -> target -> general
Xcode8之前team選項(xiàng)
Xcode8之前provisionfile選項(xiàng)
Xcode8之后變更為signing選項(xiàng)
2. swift版本
假如你Xcode7的工程中使用了swift,那么你使用Xcode8一打開(kāi)工程就會(huì)出現(xiàn)下面的選項(xiàng),選擇convert:
選convert后,會(huì)讓你選擇swift的版本。
如果你選擇了3.0版本的swift選項(xiàng),那等待convert結(jié)束后,一般依然有一部分需要你做手動(dòng)適配。
假如你暫時(shí)不想花費(fèi)時(shí)間做swift版本的適配,你可以選擇swift2.3版本,convert并不會(huì)轉(zhuǎn)換任何內(nèi)容,你的項(xiàng)目也可以像以往在Xcode7中那樣正常運(yùn)行。
此時(shí)我們選擇swift2.3:
選擇swift版本后,選擇你的工程target:
稍等片刻:
選擇update,結(jié)束收工:
二、應(yīng)用適配
1. 權(quán)限配置
隨著人們對(duì)隱私保護(hù)的注重,似乎蘋果的每一代產(chǎn)品都有相應(yīng)的體現(xiàn)——更為嚴(yán)格的設(shè)備和數(shù)據(jù)訪問(wèn)權(quán)限控制。
在iOS10中,如果你的App想要訪問(wèn)用戶的相機(jī)、相冊(cè)、麥克風(fēng)、通訊錄等等權(quán)限,都需要進(jìn)行相關(guān)的配置,不然會(huì)直接crash。
你需要在info.plist中添加你App需要的一些設(shè)備權(quán)限。
首先找到info,可以直接在這里添加鍵值對(duì):
也可以找到info.plist文件,然后使用SourceCode方式打開(kāi):
一些常用的權(quán)限配置選項(xiàng):
``` // 相機(jī) <key>NSCameraUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)相冊(cè)</string> // 相冊(cè) <key>NSPhotoLibraryUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)相機(jī)</string> // 麥克風(fēng): <key>NSMicrophoneUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)麥克風(fēng)</string> // 通信錄 <key>NSContactsUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)通信錄</string> ``` 其它權(quán)限配置選項(xiàng): ``` // 位置 <key>NSLocationUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)位置</string> // 在使用期間訪問(wèn)位置 <key>NSLocationWhenInUseUsageDescription</key> <string>App需要您的同意,才能在使用期間訪問(wèn)位置</string> // 始終訪問(wèn)位置 <key>NSLocationAlwaysUsageDescription</key> <string>App需要您的同意,才能始終訪問(wèn)位置</string> // 日歷 <key>NSCalendarsUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)日歷</string> // 提醒事項(xiàng) <key>NSRemindersUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)提醒事項(xiàng)</string> // 運(yùn)動(dòng)與健身 <key>NSMotionUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)運(yùn)動(dòng)與健身</string> // 健康更新 <key>NSHealthUpdateUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)健康更新 </string> // 健康分享 <key>NSHealthShareUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)健康分享</string> // 藍(lán)牙 <key>NSBluetoothPeripheralUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)藍(lán)牙</string> // 媒體資料庫(kù) <key>NSAppleMusicUsageDescription</key> <string>App需要您的同意,才能訪問(wèn)媒體資料庫(kù)</string> ```
2. 字體改變
iOS10的字體發(fā)生了變化,這導(dǎo)致一些文字在原有的寬高約束下可能會(huì)出現(xiàn)顯示不完整或者留白的情況,需要逐一檢查。
3. 推送通知
iOS10以后,想要正常收到推送通知,需要進(jìn)行額外的配置:
以上所述是小編給大家介紹的iOS10適配(必看),字體適配和編譯不過(guò)的問(wèn)題及解決方案,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- iOS10適配問(wèn)題收集整理
- iOS10適配問(wèn)題點(diǎn)總結(jié)
- Xcode8下iOS10常見(jiàn)報(bào)錯(cuò)閃退,字體適配和編譯不過(guò)的問(wèn)題及解決方案
- iOS開(kāi)發(fā)之適配iOS10以及Xcode8
- Xcode8以及iOS10適配等常見(jiàn)問(wèn)題匯總(整理篇)
- 兼容iOS 10 升級(jí)xcode8出現(xiàn)的問(wèn)題及一些適配問(wèn)題的解決方案
- iOS10 App適配權(quán)限 Push Notifications 字體Frame 遇到的問(wèn)題
- iOS10適配之權(quán)限Crash問(wèn)題的完美解決方案
- iOS10 適配遠(yuǎn)程推送功能實(shí)現(xiàn)代碼
相關(guān)文章
淺談WKWebView 在64位設(shè)備上的白屏問(wèn)題
下面小編就為大家?guī)?lái)一篇淺談WKWebView 在64位設(shè)備上的白屏問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-04-04iOS實(shí)現(xiàn)輸入框跟隨鍵盤自動(dòng)上移的實(shí)例代碼
本篇文章主要介紹了iOS實(shí)現(xiàn)輸入框跟隨鍵盤自動(dòng)上移的實(shí)例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-04-04ios 流媒體播放器實(shí)現(xiàn)流程及FreeStreamer的使用的示例
本篇文章主要介紹了ios 流媒體播放器實(shí)現(xiàn)流程及FreeStreamer的使用的示例代碼,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-01-01詳解iOS應(yīng)用開(kāi)發(fā)中autoresizing尺寸自動(dòng)適應(yīng)屬性的用法
這篇文章主要介紹了iOS應(yīng)用開(kāi)發(fā)中autoresizing尺寸自動(dòng)適應(yīng)屬性的用法,文中講解了使用代碼和Storyboard兩種方式調(diào)節(jié)autoresizing的方法,示例代碼為Objective-C,需要的朋友可以參考下2016-03-03iOS開(kāi)發(fā)中UIWebView的加載本地?cái)?shù)據(jù)的三種方式
這篇文章主要介紹了iOS開(kāi)發(fā)中UIWebView的加載本地?cái)?shù)據(jù)的三種方式,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-09-09