Apple 發佈嶄新技術,有助於 app 開發

Apple 推出 SwiftUI 框架、ARKit 3 和 Xcode工具,協助 App 開發人員更輕鬆迅速地開發出功能強大的 App。SwiftUI 是一個革命性的開發框架,以便開發人員更輕鬆容易地建置使用者界面。 ARKit 3、RealityKit 和 Reality Composer 等進階工具可讓開發人員輕易創造出引人入勝的 AR 體驗, 新工具和 API 大幅簡化將 iPad app 移植到 Mac 的過程。Core ML 和 Create ML 的更新更引入更強大且流暢的機器學習 app。

Apple-dev-tools-asphalt-on-ipad-pro-macbook-pro-screen-06032019

SwiftUI

Swift 的目標是要讓開發更迅速、更輕鬆且更直覺,並提供一個現代的 UI 框架。SwiftUI 有功能強大又直覺好用的全新使用者界面框架,藉由簡單明瞭的聲明式語法,能建構出精緻的 app 使用者界面。SwiftUI 提供大量自動化功能,包括版面配置、深色模式、輔助功能、各種語言支援等等,為開發人員省下不少時間。SwiftUI app 在本機上原生執行的速度飛快。且 SwiftUI 在 iOS、iPadOS、 macOS、watchOS 及 tvOS 均有相同的內建 API,開發人員可迅速寫出跨越所有 Apple 平台的原生 app。

Xcode 11 造就生動的 SwiftUI

Xcode 11 內建全新圖形化 UI 設計工具。有了 SwiftUI,UI 設計人員不用撰寫任何一道程式碼就能組合出使用者界面。Swift 程式碼會自動產生,若修改程式碼,UI 也會隨之改變,並立即顯示在其視覺化設計工具。開發人員在編譯、測試及修改程式碼時,可立即預覽 UI 效果。這種在圖像設計和程式碼編寫之間流暢切換的功能,使 UI 開發更加趣味且有效率,同時軟體開發人員和 UI 設計人員之間合作更緊密。

Apple-dev-tools-swift-UI-screen-06032019

擴增實境

ARKit 3 讓真實人物成為擴增實境的主體。開發人員利用 Motion Capture 將人體動作整合至 app,藉由 People Occlusion 功能,使人體與周遭影像自然貼合,帶來更身歷其境的 AR 體驗及好玩的綠幕場景應用程式。ARKit 3 支援同時使用前方攝影機及背面攝影機,以前方攝影機進行臉孔追蹤時,可同時追蹤最多三張臉孔。ARKit 3 亦有多人互動的協作會議功能,以便隨時進入多人共享 AR 體驗。

RealityKit 是完全為 AR 打造的新工具,其具備相當逼真的算圖效果,可融入環境場景,並支援動態模糊等攝影機特效,讓虛擬內容與真實環境幾乎真假難辨。RealityKit 亦具備驚人的動畫、物理及立體音效,開發人員可以藉由 RealityKit Swift API 充分利用 RealityKit 的強大功能。Reality Composer 這款功能強大的 app 可用於 iOS、iPadOS 和 Mac 上,就算開發人員沒有製作 3D 模型的經驗,也能打造出 AR 體驗。Reality Composer 有簡單的拖放界面和高品質的 3D 物件和動畫庫,以便開發人員放置、移動和旋轉 AR 物體,並透過 Xcode 直接整合至 app 或輸出至 AR Quick Look。

輕鬆移植 iPad App Mac

有了全新工具和 API,將 iPad app 移植到 Mac 上再簡單不過。開發人員只要打開現有的 iPad 專案並勾選其中一個註記框,便自動添加基礎 Mac 功能及視窗特性,並針對平台特有組件來調整(比如將觸控介面改成一般鍵盤和滑鼠操作),以打造出 Mac 原生版本的 app。Mac 與 iPad app 共用同一專案及原始碼,只要程式碼有任何修改,會同時反映至 iPadOS 和 macOS 版本的 app,為開發人員節省寶貴的時間和資源。一款 app 有 Mac 和 iPad 雙版本,使用者將可享有各種平台的獨特優勢,比如說使用 Mac 上的鍵盤、滑鼠、觸控板及 Touch Bar。

Core ML Create ML

Core ML 3 支援更多類型的進階即時學習模型的加速運作。現在 Core ML 可支援多於 100 種模型層,app 利用最先進的模型來識別視覺、自然語言及語音,開發人員首度能夠利用模型個性化來更新設備端的機器學習模型。這種尖端技術使開發人員在不影響使用者隱私的情況下提供個性化功能。有了 Create ML 這款機器學習開發專屬 app,開發人員毋需編寫程式碼,即可建立機器學習模型。具有不同資料集合的多重模型訓練可用於新型態的模型上,如物件偵測、活動及聲音分類等。

Apple-dev-tools-home-court-screen-06032019

Apple Watch

隨著 watchOS 6 和 Apple Watch 上的 App Store 推出,開發人員現在可以針對 Apple Watch 設計獨立運作的 app,毋需依附於 iPhone。

開發人員亦可透過 Core ML,充分利用 Apple Watch Series 4 上的 Apple 神經網路引擎。將 Core ML 訓練模型融入其 app,在設備端解譯輸入資訊,讓使用者享受更佳智慧化的 app。全新的串流 audio API,意味著使用者在 Apple Watch 上,便可由其它第三方媒體 app 串流音流傳輸。 延長運行時間的 API 讓 app 有更多時間在 Apple Watch 上完成工作,同時 app 仍在前景運作,即使螢幕關閉也不受影響,包括取用測量心率、位置及動作的感測器。

利用 Apple ID 快速、簡單與保持隱私登錄

Sign In with Apple 便於使用者利用現有的 Apple ID 登錄 app 及網站。使用者只需使用 Apple ID 就能註冊帳戶並立即開始使用 app,不必再費時填寫表單、驗證電子郵件地址或選擇密碼。所有帳戶都受到雙重認證的保障,使 Sign In with Apple 成為開發人員加強 app 安全性的絕佳方式。它還具備防詐騙功能,讓開發人員確信新的使用者是真人而非機器人。注重隱私的全新電子郵件中繼服務,讓使用者毋須透露個人電子郵件地址,仍能收取 app 開發者發出的重要訊息。Apple 不會追蹤使用者的 app 活動或記錄 app 使用情況,故開發相關商業資訊及使用者資料仍由開發者一手掌握。

其他開發相關功能

  • PencilKit 使開發人員輕鬆地在 app 中加入 Apple Pencil 支援,且包含重新設計過的工具板。
  • SiriKit 添增支援第三方的音訊 app,包括音樂、podcast 及有聲書,開發人員現在能將 Siri 直接整合至其 iOS、iPadOS 和 watchOS app,使用者使用簡單的語音命令便可操控音訊播放。
  • MapKit 為開發人員提供了許多新功能,如向量覆蓋、POI 過濾、鏡頭變焦及搖攝限制,及支援深色模式。
  • 除了針對 SwiftUI 的增強語言功能外,Swift 5.1 還增加了Module Stability – 這是在 Swift 中建構二進位相容框架的關鍵基礎。
  • 全新強大的 Metal Device 系列有助於所有不同 GPU 類型的 Apple 平台之間程式碼共享,且支援 iOS Simulator,以便打造出適用於 iOS 和 iPadOS 的 Metal app。