2016年9月7日,蘋果發布iOS 10。2016年9月14日,全新的操作系統iOS 10將正式上線。
作為開發者,如何適配iOS10呢?
1.Notification(通知)
自從Notification被引入之后,蘋果就不斷的更新優化,但這些更新優化只是小打小鬧,直至現在iOS 10開始真正的進行大改重構,這讓開發者也體會到UserNotifications的易用,功能也變得非常強大。
•iOS 9 以前的通知
1.在調用方法時,有些方法讓人很難區分,容易寫錯方法,這讓開發者有時候很苦惱。
2.應用在運行時和非運行時捕獲通知的路徑還不一致。
3.應用在前臺時,是無法直接顯示遠程通知,還需要進一步處理。
4.已經發出的通知是不能更新的,內容發出時是不能改變的,并且只有簡單文本展示方式,擴展性根本不是很好。
•iOS 10 開始的通知
1.所有相關通知被統一到了UserNotifications.framework框架中。
2.增加了撤銷、更新、中途還可以修改通知的內容。
3.通知不在是簡單的文本了,可以加入視頻、圖片,自定義通知的展示等等。
4.iOS 10相對之前的通知來說更加好用易于管理,并且進行了大規模優化,對于開發者來說是一件好事。
5.iOS 10開始對于權限問題進行了優化,申請權限就比較簡單了(本地與遠程通知集成在一個方法中)。
如果使用了推送,修改如圖:
2.ATS的問題
iOS 9中默認非HTTS的網絡是被禁止的,當然我們也可以把NSAllowsArbitraryLoads設置為YES禁用ATS。不過iOS 10從2017年1月1日起蘋果不允許我們通過這個方法跳過ATS,也就是說強制我們用HTTPS,如果不這樣的話提交App可能會被拒絕。但是我們可以通過NSExceptionDomains來針對特定的域名開放HTTP可以容易通過審核。
NSExceptionDomains方式 設置域。可以簡單理解成,把不支持https協議的接口設置成http的接口。
具體方法:
1)、在項目的info.plist中添加一個Key:App Transport Security Settings,類型為字典類型。
2)、然后給它添加一個Exception Domains,類型為字典類型;
3)、把需要的支持的域添加 主站蜘蛛池模板: 新营市| 鸡西市| 商水县| 临朐县| 南召县| 巧家县| 高安市| 长治市| 磴口县| 绍兴县| 资溪县| 宁城县| 汝南县| 长岛县| 清丰县| 长汀县| 昆山市| 宁化县| 无锡市| 伊吾县| 砀山县| 华容县| 时尚| 福建省| 奉新县| 黎川县| 武汉市| 常宁市| 滁州市| 永丰县| 四川省| 东莞市| 曲阳县| 邵阳县| 开化县| 九龙县| 巍山| 明光市| 海安县| 和平区| 泰顺县|