Android 12 小工具改善功能

Android 12 (API 級別 31) 翻新了現有小工具 API,改善使用者和開發人員 打造優質的應用程式體驗請參閱本指南,瞭解如何確保小工具與 Android 12 相容,並參考用於重新整理現有小工具的 API。

替代文字

確認您的小工具與 Android 12 相容

Android 12 中的小工具採圓角設計。在搭載 Android 12 以上版本的裝置上使用應用程式小工具時,啟動器會自動辨識小工具的背景,並裁剪出圓角。

在這種情況下,小工具可能無法在下列任一情況下正常顯示:

  • 小工具包含邊角內容:這可能會導致邊角區域中的部分內容遭到裁剪。

  • 小工具使用不會受到裁剪影響的背景。這個 包含透明背景、空白的檢視畫面或版面配置,或任何其他種類 特殊背景難以裁剪系統可能無法正確識別要使用的背景。

如果您的小工具會受到這項異動影響,建議您改用 圓角 (如下一節所述) 確保文字顯示 正確做法。

使用範例

如要瞭解這些 API 的實際運作情形,請檢視範例清單小工具

實作圓角

Android 12 導入了 system_app_widget_background_radiussystem_app_widget_inner_radius 系統參數,用於設定小工具圓角的半徑。

東京天氣小工具
圖 1:小工具和小工具內的檢視畫面圓角

1 小工具的角落。

2 小工具中檢視畫面的邊角。

詳情請參閱「實作圓角」。

新增裝置主題

從 Android 12 開始,小工具可使用裝置主題顏色,用於按鈕、背景和其他元件,包括淺色和深色主題。這樣一來,不同小工具之間的轉換和一致性就能更順暢。

詳情請參閱新增裝置主題設定

淺色模式主題的小工具
圖 2: 淺色主題的小工具
深色模式主題中的小工具
圖 3: 深色主題的小工具

輕鬆打造個人化的小工具

如果您使用 appwidget-providerconfigure 屬性指定設定活動,則在使用者將小工具新增至主畫面後,應用程式小工具主機會立即啟動該活動。

Android 12 新增了選項,讓您提供更棒的體驗 確保使用者的安全詳情請參閱「允許使用者設定小工具」。

新增複合按鈕

Android 12 新增了對有狀態行為的支援,可使用下列現有元件:

小工具仍為無狀態。您的應用程式必須儲存狀態並註冊 狀態變更事件。

圖 4: 含有核取方塊的小工具範例

詳情請參閱「支援有狀態行為」。

使用改善版 API 處理小工具大小和版面配置

從 Android 12 開始,您可以指定額外的設定小工具大小限制,並提供回應式版面配置和確切版面配置,藉此利用更精細的大小屬性和更靈活的版面配置。

詳情請參閱「提供靈活的小工具版面配置」。

改善應用程式的小工具挑選器體驗

Android 12 可讓您改善小工具挑選工具體驗 加入動態小工具預覽和小工具說明適用對象 詳請請參閱為小工具新增可縮放的小工具預覽 選擇器新增 小工具

啟用更流暢的轉場效果

從 Android 12 開始,當使用者從小工具啟動應用程式時,啟動器會提供更流暢的轉場效果。請參閱啟用流暢度 轉換

使用簡化的 RemoteViews 集合

Android 12 新增了 setRemoteAdapter(int viewId, RemoteViews.RemoteCollectionItems items) 方法,此方法可讓應用程式在填入 ListView。以往使用 ListView 時,您需要實作並宣告 RemoteViewsService,才能傳回 RemoteViewsFactory

詳情請參閱「使用 RemoteViews 集合」。

使用 RemoteViews 的執行階段修改功能

Android 12 新增了幾個可用於執行階段的 RemoteViews 方法 修改 RemoteViews 屬性。如需新增方法的完整清單,請參閱 RemoteViews API 參考資料。

詳情請參閱使用以下執行階段修改項目: RemoteViews