Jetpack Glance Alpha 版現已推出

Android開發者發表於2021-12-27

作者 / 開發者關係工程師 Marcel Pintó Biescas,@marxallski

Android 12 改進 了一項被許多 Android 使用者視為關鍵的功能 - App Widgets,改進後的 Widgets 更加實用、美觀,且更易於被使用者發現 (84% 的使用者至少使用一個 Widgets)。現在,我們釋出了 Jetpack Glance 的第一個 Alpha 版,讓 Widgets 的構建過程變得更加輕鬆,該版本是建立在 Jetpack Compose 執行時 (Runtime) 之上的新框架,旨在實現更快、更輕鬆的為主螢幕或其他介面構建 App Widgets。

歡迎您開始嘗試並 分享反饋意見

Glance 提供了新式宣告性 Kotlin API,其類似於您在 Jetpack Compose 中使用的 API,能夠幫助您用更少的程式碼構建更美觀的自適應 App Widgets。

△ Glance "Hello World" Widgets 示例

△ Glance "Hello World" Widgets 示例

class GreetingsWidget(private val name: String): GlanceAppWidget() {
    @Composable
    override fun Content() {
        Text(text = "Hello $name")
    }
}

class GreetingsWidgetReceiver : GlanceAppWidgetReceiver() {

    override val glanceAppWidget = GreetingsWidget("Glance")
}

工作原理

Glance 提供了可組合項的基礎元件集,助您打造 "一目瞭然" 的體驗。現在,我們將提供更多的 App Widgets。Glance 利用 Jetpack Compose 執行時 (Runtime),可以將 可組合項 轉化為實際的 RemoteViews,並在 App Widgets 中顯示。

△ Glance 結構示意圖

△ Glance 結構示意圖

這意味著 Glance 需要 啟用 Compose,且依賴於執行時 (Runtime)、圖形 (Graphics) 和單元介面 Compose 層,但它與其他現有的 Jetpack Compose 介面元素之間不具備直接互操作性。但是,您可以分享應用中的狀態或任何其他邏輯,以此來打造一目瞭然的介面。

Alpha 版介紹

此初始版本引入了主要的 API,不僅能夠實現與現有 RemoteViews 之間的互操作性,還能幫助您構建 App Widgets。

以下是該開發庫提供的內容概覽:

我們還將推出更多功能,例如預設主題,更完善的 Android Studio 支援等等。敬請期待 新版本

注意: 雖然 SDK 的最低版本是 21,但 Alpha 版目前支援相容的最低版本為 SDK v23。

可以檢視 在 Android 12 中構建新式 Android App Widgets 視訊瞭解更多詳細資訊。

Glance 使用入門

您可以在 GitHub 上檢視 示例,以便快速入門。也可以在最新的 穩定版 Android Studio 中使用 Glance,但首先需要按照 Jetpack Compose 文件 中的步驟進行設定,因為 Glance 依賴於 Compose 執行時 (Runtime)。

此外,您還可以檢視 AndroidX 程式碼庫中的進階示例

編寫您自己的外掛,您可以擴充套件 Android Gradle Plugin 並根據您的專案需求自定義您的構建!

ResponsiveAppWidget.kt 演示

Alpha 版本是您參與開發 API 的重要機會,因此,歡迎 分享您的反饋,幫助我們瞭解並進一步提升您的體驗!也歡迎您持續關注我們瞭解更多最新內容。

期待您的體驗!

歡迎您 點選這裡 向我們提交反饋,或分享您喜歡的內容、發現的問題。您的反饋對我們非常重要,感謝您的支援!

相關文章