iOS16鎖屏小組件:Creating Lock Screen Widgets and Watch Complications

Demo Git Hub: https://github.com/wangxiaobai1840/LockScreenWidgets

1. 簡介

????從iOS16和watchOS9開始,蘋果支持應用程序中小組件同時能夠在iPhone 鎖屏 和 watch表盤上展示??梢宰層脩舾奖愕墨@取應用的相關信息。
屏幕小組件和watch表盤應用使用WidgetKit和SwiftUI創(chuàng)建和開發(fā),使我們能夠:

????????a. 更新現(xiàn)有的 iOS 主屏幕和watch上今日視圖小部件的代碼以支持 iPhone 上的鎖屏小部件。
????????b. watchOS 應用程序中使用WidgetKit替換ClockKit,讓我們的iOS和watchOS 應用程序之間復用更多的代碼
????????c. 可以創(chuàng)建同時支持iPhone 鎖屏和watch小組件
????????d. 在應用程序中添加對iOS或者watchOS的支持,并創(chuàng)建小組件

2. Widget介紹以及示例

????2.1. Widget familya##

????????2.1.1. Accessing system families

????????????????支持平臺: iOS 14.0+ iPadOS 14.0+ macOS 11.0+ Mac Catalyst 14.0+


image.png

????2.1. Accessing accessory families

????????????????支持平臺:iOS 16.0+ iPadOS 16.0+ Mac Catalyst 16.0+ watchOS 9.0+


image.png
asscessoryCircular

acccessoryRectangular

accessoryInline

accessoryCorner

2.2. Widget創(chuàng)建

????a. 創(chuàng)建新的project
????b. 選擇project → project → 添加新的target
????c. 如果要創(chuàng)建選中新建watchOS Extension,target → architectures → supported Platforms → watchOS 。否則直接下一步


image.png

????d. 選擇target → target → 添加Widget Extension


image.png

2.3. Widget結構介紹

2.3.1. Provider

????為小組件展示提供一切必要信息的結構體

Provider

2.3.2. TimelineEntry

????渲染 Widget 所需的數(shù)據(jù)模型


TimelineEntry

2.3.3. EntryView

EntryView

2.3.4. @main

????Widget的主入口


main

2.4. 鎖屏小組件設置

????a. 鎖屏時長按屏幕設置
????b. 設置 → 墻紙
????c. 設置 → 專注模式, 為單個專注模式添加組件


鎖屏小組件設置

3. 相關資料

官方文檔: https://developer.apple.com/documentation/widgetkit/creating-lock-screen-widgets-and-watch-complications
WWDC:https://developer.apple.com/videos/play/wwdc2022/10050/

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容