watchOS 3 簡介
本文介紹 Xamarin 開發人員在 watchOS 3 中提供的所有全新和已修改 API 和功能。
本檔案將涵蓋下列主題:
- watchOS 3 的新功能
- Apple Pay 增強功能 會在 Apple Watch 上新增應用程式內付款的支援。
- 背景工作 可讓應用程式在背景更新其資訊,以便在使用者需要時準備就緒。
- watchOS 3 已針對提供新功能的 watchOS 3 進行複雜功能增強 功能。
- 新可用的架構 已針對 watchOS 應用程式公開。
- 主動式建議 可讓應用程式主動向用戶顯示資訊。
- 已進行數 個安全性和隱私權增強 功能來監看OS 3。
- 快照集和 Dock 可讓使用者快速存取應用程式 watchOS 應用程式。
- 使用者通知 同時提供本機和遠端通知給使用者。
- watchOS 3 中已進行數個 Watch 連線 ivity Framework 增強功能。
- watchOS 3 中已進行數 個 WatchKit 架構增強功能 。
- 「鍛煉應用程式增強 功能」為與訓練相關的Apple Watch應用程式提供新功能。
- 已在 watchOS 3 中進行其他架構變更 。
- watchOS 3 中已被取代的 API 。
watchOS 3 的新功能
Apple 已在 watchOS 3 中新增數個新的 API 和服務,以及許多現有功能的增強功能,包括:
Apple Pay 增強功能
在 watchOS 3 中,已擴充 PassKit 架構,允許針對在 Apple Watch 上執行的應用程式提供安全、應用程式內付款(實體產品和服務)的支援。
使用新的 PKPaymentAuthorizationController 和 PKPaymentAuthorizationControllerDelegate 類別來呈現並回應使用者可以授權付款要求的介面。
若要深入瞭解,請參閱我們的 Apple Pay增強功能 指南。
背景工作
watchOS 3 引進了數個背景工作,應用程式可用來更新其資訊,確保其具有用戶開啟之前所需的內容。
下列新的背景工作可供使用:
- 背景應用程式重新 整理 - WKApplicationRefreshBackgroundTask 工作可讓應用程式在背景中更新其狀態。 這通常包含另一項工作,例如使用 NSUrlSession 從因特網下載新內容。
- 背景快照集重新 整理 - WKSnapshotRefreshBackgroundTask 工作可讓應用程式在系統擷取將用來填入 Dock 的快照集之前更新其內容和 UI。
- Background Watch 連線 ivity - WKWatch 連線 ivityRefreshBackgroundTask 工作會在應用程式收到配對 i 電話 的背景數據時啟動。
- 背景 URL 工作階段 - 當背景傳輸需要授權或完成時,會針對應用程式啟動 WKURLSessionRefreshBackgroundTask 工作(成功或發生錯誤)。
若要深入瞭解,請參閱我們的 背景工作 指南。
複雜功能增強功能
複雜功能是小型視覺元素,可一目了然地提供有用的資訊。 視選取的手錶臉部而定,用戶能夠使用一或多個複雜功能來自定義手錶臉部。
watchOS 3 可讓應用程式為手錶應用程式建立一或多個複雜功能,讓使用者可以從手錶臉部快速存取其資訊。
此外,複雜功能提供下列優點:
- 使用者可以直接從手錶臉部點選 [複雜問題] 來快速啟動應用程式。
- 在監看臉上擁有其中一個應用程式的複雜功能,會導致系統讓應用程式處於現成啟動狀態,並在背景嘗試啟動應用程式、將應用程式保留在記憶體中,並額外提供更新時間。
- 併發症保證每天至少 50 個推送更新。
- 當應用程式包含複雜功能時,它將會出現在Apple Watch Face Gallery 中。
在 watchOS 3 中,ClockKit 架構現在包含數個新的範本,用於額外的大型複雜功能,例如 CLKComplicationTemplateExtraLargeColumnsText 和 CLKComplicationTemplateExtraLargeRingImage。 此外,若要建立可本地化的文字,請使用CLKTextProvider類別的新方法。
若要深入瞭解,請參閱我們的 watchOS 3 快速互動技術指南。
新可用的架構
watchOS 3 包含數個先前無法使用的現有 Apple 架構,例如:
- SceneKit - 使用 SceneKit 將 3D 模型納入監看應用程式的 UI,包括其他平臺上可用的大部分功能,例如光源、陰影、動畫、物理和粒子系統。 不支援 3D 空間音訊、自定義金屬或 OpenGL 著色器、核心影像篩選和實體材質。
- SpriteKit - 使用 SpriteKit 在應用程式監看應用程式的 UI 中轉譯和建立 Sprite 動畫,包括動作、物理、光源和粒子系統等其他平臺上可用的大部分功能。 不支援 3D 空間音訊、視訊播放和核心影像篩選器。
- AVFoundation - 管理及播放音訊。
- CloudKit - 在監看應用程式與 iCloud 容器之間行動數據。
- 核心音訊 - 管理代表音訊數據流、複雜緩衝區和時間值的數據類型。
- GameKit - 建立社交遊戲。
主動式建議
watchOS 3 可讓應用程式主動將信息呈現給指定內容內的使用者。 為了支援這項功能, NSUserActivity 現在包含 MapItem
屬性,可讓應用程式提供位置資訊以供其他應用程式稍後使用。
若要深入瞭解,請參閱我們的 主動式建議 簡介指南。
安全性和隱私權增強功能
Apple 對 watchOS 3 的安全性和隱私權進行了多項增強功能,可協助開發人員改善其應用程式的安全性,並確保終端使用者的隱私權。
因此,在 watchOS 3(或更新版本)上執行的應用程式必須藉由在其檔案中 Info.plist
輸入一或多個隱私權特定密鑰,以靜態方式宣告其存取特定功能或使用者資訊的意圖,以向使用者說明應用程式想要取得存取權的原因。
由於 watchOS 3 會與 iOS 10 共用這些變更,如需詳細資訊,請參閱我們的 iOS 10 安全性和隱私權增強 功能指南。
快照集和停駐
在 watchOS 3 中,Apple 已新增 Dock,讓使用者可以釘選他們慣用的應用程式並快速存取它們。 當使用者按下 Apple Watch 上的側邊按鈕時,將會顯示釘選的應用程式快照集庫。 使用者可以向左或向右撥動以尋找所需的應用程式,然後點選應用程式,將快照集取代為執行中應用程式的介面。
系統會定期擷取應用程式的UI快照集,並使用這些快照集填入 Docs。watchOS 可讓應用程式有機會在擷取此快照集之前更新其內容和UI。
如需詳細資訊,請參閱我們的 背景工作 指南和 Apple 的 WKSnapshotRefreshBackgroundTask 參考 。
使用者通知
watchOS 3 中引進的使用者通知架構支援將本機和遠端通知傳遞至 Apple Watch。 使用此架構根據特定條件排程通知,例如一天或位置的時間,以及接收和處理通知。
若要深入瞭解,請參閱我們的 watchOS 3 快速互動技術指南。
觀看 連線ivity Framework 增強功能
WCSession 類別的新HasContentPending
屬性表示會話已收到背景中需要處理的數據。 RemainingComplicationUserInfoTransfers
屬性會傳回 iOS 應用程式可以更新其 watchOS 複雜狀況的剩餘時間。
若要深入瞭解,請參閱我們的 背景工作 指南。
WatchKit 架構增強功能
watchOS 3 包含 WatchKit 架構的數個增強功能,包括下列各項:
- 應用程式可以使用新的 WKCrownSequencer 類別取得 Digital Crown 的狀態,並在使用者使用 WKCrownDelegate 類別旋轉皇冠時收到更新。
- WKExtension 類別現在包含
ApplicationState
應用程式和 WKApplicationState 常數,應用程式可用來追蹤應用程式的運行時間狀態。WKExtension
也提供兩個新的方法,可用來排程背景工作。 - WKExtensionDelegate 現在包含新的
ApplicationWillEnterForeground
和ApplicationDidEnterBackground
HandleBackgroundTasks
方法來監視應用程式狀態中的變更,並處理背景工作更新。 - 已新增 WKGestureRecognizer 類別,以提供下列類型的手勢辨識給監看應用程式:WKLongPressGestureRecognizer、WKPanGestureRecognizer、WKSwipeGestureRecognizer 和 WKTapGestureRecognizer。
- 新的 WKinterfaceHM 相機 類別提供任何 HomeKit 連結 IP 相機的介面。
- 新的 WKInterfaceInlineMovie 類別可讓應用程式在使用者點選影片時顯示由執行中的電影取代的電影「海報」。
- 新的 WKInterfacePaymentButton 類別可讓應用程式在其 UI 中呈現 Apple Pay 按鈕,以在點選時起始付款要求。
- 新的 WKInterfaceSCNScene 類別會呈現在 Apple Watch 上顯示 SceneKit 場景的介面。
- 新的 WKInterfaceSKScene 類別會呈現在 Apple Watch 上顯示 SpriteKit 場景的介面。
若要深入瞭解,請參閱我們的 watchOS 3 快速互動技術指南。
體能訓練應用程式增強功能
觀看OS 3的新功能,鍛煉相關應用程式能夠在Apple Watch的背景中執行。 若要啟用這項功能(並取得 HealthKit 資料的存取權),應用程式必須將金鑰包含在 WKBackgroundModes
檔案中 Info.plist
,且值為 workout-processing
。
此外,開發人員現在可以從配對 i 電話 上的 iOS 應用程式版本啟動 watchOS 鍛煉應用程式。
若要深入瞭解,請參閱我們的 訓練應用程式增強 功能指南。
其他架構變更
除了上述的主要架構變更和新增專案之外,Apple 在 watchOS 3 中也做了許多其他次要架構變更。
若要深入瞭解,請參閱我們的 其他架構變更 指南。
已被取代的 API
watchOS 3 中已淘汰下列 API:
UILocalNotification
UIKit 的類別已被取代,應該取代為使用者通知架構。
如需淘汰和變更的完整清單,請參閱 Apple 的 watchOS 2.2 至 watchOS 3.0 API 差異 檔。