iOS14 Widgets新特性

一、什麼是Widgets?

Widgets詞典釋義爲“小組件”、“窗口小部件”,他不是一個全新的事物,而是早在10多年前,安卓手機就已經出現並進行應用了。



比如IOS14原生的日曆和天氣widgets,都是一些很常用的功能,在手機桌面上就可以直接展示用戶主要關心的關鍵信息,而這些信息絕不是一定非要打開APP才能使用的。

但從上面的圖片可以看出來,安卓版本的widgets可以操作更多的功能,如搜索,播放音樂等等交互類功能,iOS版本只是一些功能的展示。功能的差異性會在後面的開發者需知裏詳細介紹。

二、開發須知

蘋果並不希望開發者將 Widget 僅僅當作 app 的一個快捷入口,蘋果基於上面的設計定位,同時也爲了節省系統資源保證續航,對 Widget 的做了一些限制:通過蘋果開發者文檔creating-a-widget-extension也能看到蘋果給了明確的聲明

窗口小部件顯示只讀信息,不支持交互式元素,例如滾動元素或開關。 在呈現窗口小部件的內容時,WidgetKit會忽略交互式元素

主要限制如下:

  • iOS14系統以上才支持
  • 它只能使用SwiftUI進行開發,所以需要SwiftUI和Swift基礎。
  • Widget只支持3種尺寸systemSmall (2x2)、 systemMedium (4x2)、 systemLarge(4x4)
  • 不支持動畫(包括視頻),僅支持靜態頁面展示。
  • 更新頻率由系統通過機器學習來動態分配。
  • 不支持拖拽、滾動等複雜的交互,不支持 Switch 等控件。
  • 用戶點擊 Widget 一定會跳轉到 app。
  • 無法主動更新數據 (重點,讓所有交互型的邏輯都無法實現)

從上面的條例可以看出,小組件功能幾乎做不了交互。小組件是一個可以大大提升使用體驗的功能,但蘋果明顯不想開放太多的權限給小組件功能(更弱的交互能力),目前來說,小組件只有用來作爲一些頁面/信息展示這個場景下還有作用,感覺更像是爲蘋果自身的應用做一個使用場景,從開發者角度來講對平臺開發者並不友好,但蘋果系統本身的體驗還是提升了一個臺階,小組件的存在可以iOS14用戶製作一些個性化精緻的主題。


三、老的小組件開發方式

答案應該是會被廢棄。

在 iOS 14 的開發套件裏面,老的小組件開發方式已經被標註爲過時,也即不推薦、隨時會被廢棄的內容。按以往的經驗,標註爲過時的方法是作爲過渡時期的方案,並終將會被移除的。

四、後記

iOS 14的桌面小組件將重點放在了“信息展示”,而不是將其視爲應用程序的“快捷方式”,進一步弱化了小組件的交互能力。對於這個Widget組件,我的感覺是好像有點用,但其實沒啥用,因爲交互性能太弱了,基本做不了任何東西,哪怕是一個switch點擊也無法實現,僅僅可以做一些信息的展示,當然,如果你的app剛好有需要,那麼iOS14小組件是個非常不錯的選擇,個人也期待比較好效果的開發,最後,希望蘋果後續開通更多的權限來幫助小組件完成更強的應用體驗!

參考文獻:

Widgets
Creating a Widget Extension
Timeline
關於iOS14 widgets的嘗新與思考
一次對 iOS 桌面的大手術,開發者怎麼看 iOS 14 的 Widgets 變化
iOS14 Widget開發踩坑
如何進行 iOS Widget 開發?

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章