程式設計師應該關心的iOS12新特性一覽

ZacJi發表於2018-06-05

iOS12隨著2018WWDC的召開揭開了它神祕的面紗, 不過令人感到失望的是, 它並沒有帶來翻天覆地的變化: 沒有改變沿用了5年的扁平化UI, 沒有黑暗模式(但有半成品), 沒有帶來Swift5, 沒有帶來真正強大的Siri.

程式設計師應該關心的iOS12新特性一覽
和朋友圈、微博的畫風不同,我們程式設計師其實對黑色磨砂widget、防沉迷、新的照片、測量、錄音App不感興趣. 我們真正感興趣的應該是iOS12新開放的特性和API, 以及系統底層的優化和技術實現.

那麼首先, 我們就來介紹一下這次iOS12最重磅的功能, Animoji大頭貼版.

程式設計師應該關心的iOS12新特性一覽
開玩笑?, 不過我必須要說, 此次新加入的大頭貼模式實在太有魔性, 精美的3D建模和光影效果讓螢幕中的角色栩栩如生, 毫無違和感.

下面言歸正傳

程式設計師應該關心的iOS12新特性一覽
稍微對iOS比較瞭解的使用者看到這個Siri Shortcuts一眼就能認出它就是大名鼎鼎的Workflow的馬甲哦不升級版. 它的主要功能依舊是將各種事件進行排列組合, 以最終實現一次觸發完成多個操作, 比如自動舉報垃圾簡訊、掃描二維碼自動複製內容等等.從截圖中我們可以看出, 蘋果開放了更多的系統介面, 甚至支援第三方應用的接入, 讓Workflow可以為我們做到更多, 創造更多可能性.

在此之上, Apple還水到渠成的加入了Siri控制. 你現在可以對Siri說一個暗號, 它就能幫你完成一系列之前安排好的任務. 這很難說是Siri的進化, 更像是對Workflow的一種補充. 你可以理解為, Siri暫時還無法像Bixby一樣智慧的為你搶紅包、發朋友圈、關注微博, 但它能夠通過適當的設定和學習, 儘可能完成你想要的任務. 當然, 這需要你有一定的邏輯能力, 以及, 需要第三方App的適配.

除此之外Siri有變得更聰明嗎?能為我做更多的事情嗎? 至少從目前的資訊來看, 並沒有.

程式設計師應該關心的iOS12新特性一覽
Core ML在短短一年的時間裡進化到了第二代, 伴隨而來的是模型構建的速度提升和容量的減少(相比於上一版本使用 Batch 預測速度快了 30% 左右,使用 Quantization 模型大小減少了 75% 左右), 基於Playground的視覺化模型構建, 基於視覺和自然語言的模型. 這進一步降低了機器學習的成本.

機器學習的熱度在今年依舊火熱, 但在移動端似乎還沒有亮眼的基於機器學習的App出現(不含基於雲的機器學習).

程式設計師應該關心的iOS12新特性一覽
ARKit也在第二個年頭進化到了第二代. 支援多人同時操作, 讓AR遊戲能夠創造更多有意思的使用場景. 現在, ARKit能夠儲存當前環境的狀態並在下次使用時直接利用之前的環境資料構建3D模型. 同時, ARKit也增強了對實物2D和3D物體的感知, 能夠在此基礎上玩出更多花樣. 例如WWDC上樂高演示的Demo, 虛擬3D模型可以覆蓋在實物3D物體上, 完成各種互動, 毫無違和感.

目前VR由於成本、技術、體驗等種種原因, 已經逐漸退去了光環. AR在蘋果的加持下雖然熱度不減, 但始終也沒有太多閃光點. 這還需要廠商和開發者在商業、 技術可能性上繼續探索. Apple在這樣的背景下提出了Quick Look, 將3D模型+AR變成可以分享的檔案. 這是一個很有意思的想法, 甚至發散一點, 它將有可能取代圖片和視訊, 成為PPT、 朋友圈的一種新的傳播媒介.

設想一下, 你在某個手遊中打到了傳說中的屠龍寶刀, 點選分享, 你的朋友就能夠看的這把寶刀的3D模型, 甚至可以以1:1的形式展現在現實世界中, 這是多麼有意思的一件事情. 我相信這將徹底改變商業、遊戲、教育等等眾多領域.

Metal 2.1

Metal進行了小版本迭代, 新增了包括對加速射線追蹤(accelerated ray tracing)和間接命令緩衝區(indirect command buffers)的支援.

Interactive Controls in Notifications

通知現在加入了更多的互動, 讓使用者可以在不開啟應用的情況下作出更多的操作. 此外, 這次最顯見的就是通知分組功能. 這下再也不會被IM霸屏啦.

程式設計師應該關心的iOS12新特性一覽

Authentication Services

其實之前通過integrate password manager, 我們已經能夠實現Safari和部分App的密碼自動填充. 此次新增加了Password AutoFill能夠將密碼自動填充延伸到更廣的範圍, 由此可以猜想, 像1Password甚至第三方瀏覽器都有可能實現跨應用的密碼自動填充功能.

甚至我設想, 如果我們的所有密碼都跟我們的裝置(Face ID、 Touch ID)相關聯, 那我們不需要設定一個好記的密碼, 甚至我們不需要知道這個密碼, 就可以提供相應的身份驗證. 我想這就是密碼的最終形態了吧.

CarPlay for Navigation Apps

CarPlay現在支援第三方導航啦

Network Framework

雖然在釋出會上沒有講, 但似乎蘋果重寫了iOS12的Network Framework. 這帶來的好處是, 如果你的App需要直接使用如TLS,TCP和UDP等協議, 新的Network Framewor將會讓工作變得更加容易. 當然如果你僅僅使用到URLSession或是基於URLSession的第三方網路框架, 那麼無需改動. URLSession是基於新的Network Framework構建的.

此外, Apple還如同往年一樣, 例行將一批老的API打入冷宮, 大家在更新Xcode後會一一看到警告⚠️.

以上就是iOS12給我們帶來的新特性. 是不是和我一樣覺得不夠盡興, 略感失望. 其實和之前媒體推測的一樣, 由於iOS11出現的大量bug, iOS12推遲了大量新特性甚至是新UI互動, 轉而將重心放到程式碼質量上. 當然, 還有一個重要的原因就是, 為同樣是N年沒有大更新的Mac OS帶來了大量的新功能和新特性. 或許Mac OS將會是iOS的一個試驗田, 我們今天在Mac OS上看到的種種特性將在接下來的一段時間內陸續出現在iOS上. 甚至, 喊了N年的Mac OS與iOS的整合也將慢慢到來, 不管是以什麼方式.

相關文章