- Notification(通知)
自從Notification被引入后 蘋果就不斷的更新優(yōu)化 但之前都是一些較小的改動(dòng)和優(yōu)化 直到iOS10開始了真正進(jìn)行大改重構(gòu) 這次改動(dòng)也要開發(fā)者體會(huì)到了Notification的易用 功能也變得十分強(qiáng)大
iOS9以前的通知
1. 在調(diào)用方法時(shí) 有些方法很難區(qū)分 容易寫錯(cuò)方法 讓開發(fā)者苦惱
2. 應(yīng)用在運(yùn)行時(shí)和非運(yùn)行時(shí)捕獲通知的路徑還不一致
3. 應(yīng)用在前臺(tái)時(shí) 無法直接顯示遠(yuǎn)程通知 還需要進(jìn)一步處理
4. 已經(jīng)發(fā)出的通知是不能更新的 內(nèi)容發(fā)出時(shí)不能改變 并且只有簡單文本展示形式 擴(kuò)展性不是很好
iOS10的通知
1. 所有通知被統(tǒng)一到了UserNotifications.framework框架中
2. 增加了撤銷 更新 中途還可以修改通知的內(nèi)容
3. 通知不是簡單的文本了 還可以加入視頻圖片 自定義通知的展示等等
4. 相對(duì)于之前的通知iOS10的通知更易于管理 并且進(jìn)行了大規(guī)模的優(yōu)化
5. iOS10對(duì)權(quán)限問題進(jìn)行了優(yōu)化 申請(qǐng)權(quán)限比較簡單了(本地佷遠(yuǎn)程通知集成在一個(gè)方法中)
通知相關(guān)學(xué)習(xí)資料
https://developer.apple.com/reference/usernotifications
ATS問題
在iOS9中HTTP是不推薦使用的 當(dāng)然我們可以把NSAllowsArbitraryLoads設(shè)置為YES禁用ATS 而iOS10不允許我們通過這個(gè)方法跳過ATS 也就是說強(qiáng)制我們使用HTTPS 如果不這樣的話提交APP可能會(huì)被拒 但是我們可以通過NSExceptionDomais來針對(duì)特定的域名開放HTTP通過審核
ATS相關(guān)學(xué)習(xí)資料https://onevcat.com/2016/06/ios-10-ats/-
iOS隱私權(quán)限問題
iOS10對(duì)隱私權(quán)限更加嚴(yán)格 如果你不設(shè)置就會(huì)直接崩潰 解決方法一般都是在info.plist文件添加對(duì)應(yīng)的key-value就可以了 如下:隱私權(quán)限相關(guān)學(xué)習(xí)資料http://www.itdecent.cn/p/616240463a7a
C0A59367-9CB0-47C7-9D08-8C0D2978C2D2.png -
Xcode8運(yùn)行時(shí)出現(xiàn)一堆沒用的log的解決方法
點(diǎn)擊'Wonderful'也就是Xcode中選擇模擬器選項(xiàng)左側(cè)位置 會(huì)彈出選項(xiàng)框點(diǎn)擊Edit scheme
A4E427B0-C691-4C49-AD5E-99617D8BB144.png
然后在固定位置添加OS_ACTIVITY_MODE : disable 就可以了
9B33BE70BAA9FE854619969B522C3428.jpg
相關(guān)資料鏈接http://stackoverflow.com/questions/37800790/hide-strange-unwanted-xcode-8-logs 關(guān)于UIStatusBar的一些改動(dòng)
在開發(fā)過程中我們可能會(huì)遇到對(duì)狀態(tài)欄進(jìn)行一些屬性設(shè)置 在iOS10中之前地狀態(tài)欄的設(shè)置方法已經(jīng)失效了 在iOS10中需要使用preferredStatusBar例如:
- (UIStatusBarStyle)preferredStatusBarStyle {
return UIStatusBarStyleDefault;
}iOS10 UICollectionView性能優(yōu)化
在開發(fā)中 collectionView的使用很廣泛 但是在使用過程中collectionView經(jīng)常會(huì)出現(xiàn)一些卡頓 加載緩慢等一系列的問題 所以iOS10 對(duì)collectionView進(jìn)行了一些列的優(yōu)化 感興趣的可以通過下面的參考資料進(jìn)行了解學(xué)習(xí)哈
http://www.itdecent.cn/p/e97780a24224iOS對(duì)UIColor進(jìn)行優(yōu)化
iOS10之前我們都是用RGB來設(shè)置顏色 用起來不是特別的多樣化 在iOS10蘋果官方建議我們使用sRGB 它的性能更好顏色更為豐富iOS10 UITextContentType
在iOS10 UITextField添加了textContentType枚舉 什么意思呢其實(shí)就是為了方便開發(fā) 和用戶的需要提供了一個(gè)textField輸入內(nèi)容格式的枚舉 怎么說呢 也就是如果當(dāng)前textField輸入框要輸入的是一個(gè)用戶的郵箱時(shí) 系統(tǒng)就會(huì)彈出輸入郵箱的鍵盤(UITextContentTypeEmailAddress)iOS10 字體隨著手機(jī)系統(tǒng)字體而改變
在不同的系統(tǒng)上字體會(huì)有著不同的變化 這時(shí)我們需要寫很多代碼來改變字體大小 在iOS10中為我們提供了adjustsFontForContentSizeCategory屬性來調(diào)整字體的大小iOS10 UIScrollView的refreshControl
iOS10 以后只要是繼承UIScrollView那么就支持刷新功能iOS10判斷系統(tǒng)版本的正確方法
// oc中
[[UIDevice currentDevice] systemVersion];
// swift中
if #available(iOS 10.0, *) {
print("iOS 10.0")
}Xcode8中插件不能使用的問題
Xcode升級(jí)到Xcode8時(shí)插件都不允許使用了 但是通過一定渠道可以解決這問題
參考一下資料 http://qbview.url.cn/getResourceInfo?appid=31&url=http%3A%2F%2Fvongloo.me%2F2016%2F09%2F10%2FMake-Your-Xcode8-Great-Again%2F%3Futm_source%3Dtuicool%26utm_medium%3Dreferral%26nsukey%3DGLUj2K4hdS5LVWKX4zMb6SJPS79KXcI4AEDC2Tbgy9d9u3UqCnjJ3UdOuHQc3KQlYIflEryezyvIhTPTGJL9%252Fg%253D%253D&version=10000&doview=1&ua=Mozilla%2F5.0+(Linux%3B+Android+4.4.4%3B+MI+4W+Build%2FKTU84P)+AppleWebKit%2F537.36+(KHTML%2C+like+Gecko)+Version%2F4.0+Chrome%2F33.0.0.0+Mobile+Safari%2F537.36+MicroMessenger%2F6.3.25.861+NetType%2FWIFI+Language%2Fzh_TW&keeplink=0&reformat=0
但是還會(huì)有問題哈 如果使用插件引起安全問題 并且在APP提交中會(huì)被拒 所以還是不要使用了 哈哈哈iOS10 中字體的一些問題
簡單的說就是 Xcode8上面的字體會(huì)比之前版本的字體大一些 具體大多少是不確定的可能大0.5 可能大1 可能大1.5 還可能更多 字體設(shè)施越大相差的也就要越大啦
但是英文不會(huì)出現(xiàn)這種問題只有中文會(huì)出現(xiàn)這種問題 這會(huì)造成在某些控件上 文字顯示不全等問題 目前為止只有修改空間尺寸這個(gè)方法來解決這個(gè)問題哈Xcode8編譯緩慢的問題
在Xcode8運(yùn)行程序時(shí) 會(huì)出現(xiàn)編譯緩慢的情況 關(guān)于這個(gè)問題 感興趣的可以參考如下資料進(jìn)行解決
http://nszzy.me/2016/03/20/reduce-xcode-build-times/?nsukey=YkG%2Fw1VxrKduTy1%2F%2FLQeob5ejpZ8igs3FrOLd6LprednEk%2BIfPKNy0%2Fl6yBpRXCIFDHrU0WePEWWdc9JcIBrew%3D%3DiOS10 ImagePickerController.cameraViewTransform的問題
iOS中自定義相機(jī)出現(xiàn)了問題 cameraViewTransform不能使用了 關(guān)于這個(gè)問題感興趣的可以參考如下資料
http://stackoverflow.com/questions/39124794/uiimagepickercontrollers-cameraviewtransform-is-ignoring-scaling-and-transla
to be continued...


