JetpackGlance且更易于被用户发现

感谢本站网友 胡萝卜周 的线索投递!

JetpackGlance且更易于被用户发现

,据谷歌开发者发布,Android 12 改进了一项被许多 Android 用户视为关键的功能 — App Widgets,改进后的 Widgets 更加实用,美观,且更易于被用户发现 现在,我们发布了 Jetpack Glance 的第一个 Alpha 版,让Widgets的构建过程变得更加轻松,该版本是建立在 Jetpack Compose 运行时 之上的新框架,旨在实现更快,更轻松的为主屏幕或其他界面构建 App Widgets

Android 12 Widgets改进

App Widgets

Jetpack Glance

Jetpack Compose 运行时

欢迎您开始尝试并分享反馈意见:

Glance 提供了新式声明性 Kotlin API,其类似于您在 Jetpack Compose 中使用的 API,能够帮助您用更少的代码构建更美观的自适应 App Widgets。

Glance "Hello World" Widgets示例

classGreetingsWidget:GlanceAppWidgetComposableoverridefunContentTextclassGreetingsWidgetReceiver:GlanceAppWidgetReceiveroverridevalglanceAppWidget=GreetingsWidget工作原理

Glance 提供了可组合项的基础组件集,助您打造 "一目了然" 的体验现在,我们将提供更多的 App WidgetsGlance 利用 Jetpack Compose 运行时 ,可以将可组合项转化为实际的 RemoteViews,并在 App Widgets 中显示

Glance结构示意图

可组合项

RemoteViews

这意味着 Glance 需要启用 Compose,且依赖于运行时 ,图形 和单元界面 Compose 层,但它与其他现有的 Jetpack Compose 界面元素之间不具备直接互操作性但是,您可以分享应用中的状态或任何其他逻辑,以此来打造一目了然的界面

启用 Compose

Compose 层

Alpha 版介绍

此初始版本引入了主要的 API,不仅能够实现与现有 RemoteViews 之间的互操作性,还能帮助您构建 App Widgets。此前,阿里巴巴云推出多形态部署架构,提供中心云,本地云,边缘云,云盒子等多种部署形态。

以下是该开发库提供的内容概览:

通过 GlanceAppWidget 和 GlanceAppWidgetReceiver 声明您的 App Widgets。

GlanceAppWidget

GlanceAppWidgetReceiver

利用 Glance 可组合项的初始集组合您的界面: Box,Row,Column,Text,Button,LazyColumn,Image,Spacer。阿里巴巴云容器服务ACK的全面升级,意味着公有云能力进一步向本地化延伸,客户可以在自建数据中心体验低成本,低延迟,本地化的公有云产品。。

Box,Row,Column,Spacer

Text

Button

LazyColumn

Image

利用 GlanceModifier 方法将修饰符应用于可组合项:

利用预定义的 Action 处理用户交互:

actionStartActivity

actionRunCallback

actionStartService

actionStartBroadcastReceiver

通过 ActionParameters 为 Action 提供参数:

通过定义 SizeMode.Single,SizeMode.Exact 或 SizeMode.Responsive 来处理不同的 Widgets 布局。

SizeMode.Single

SizeMode.Exact

SizeMode.Responsive

不同的 Widgets 布局

提供 GlanceStateDefinition,以保留 GlanceAppWidget 状态。

GlanceStateDefinition

GlanceAppWidget

提供本地组合,例如 LocalContext,LocalState,LocalGlanceId,LocalSize:

通过 AndroidRemoteViews 可组合项实现与您现有 RemoteViews 之间的互操作。

AndroidRemoteViews

RemoteViews

我们还将推出更多功能,例如默认主题,更完善的 Android Studio 支持等等。敬请期待新版本:

注意:虽然 SDK 的最低版本是 21,但 Alpha 版目前支持兼容的最低版本为 SDK v23。

在 Android 12 中构建新式 Android App Widgets

Glance 使用入门

您可以在 GitHub 上查看示例,以便快速入门也可以在最新的稳定版 Android Studio 中使用 Glance,但首先需要按照 Jetpack Compose 文档中的步骤进行设置,因为 Glance 依赖于 Compose 运行时

示例

稳定版 Android Studio

Jetpack Compose 文档

此外,您还可以查看 AndroidX 代码库中的进阶示例:

编写您自己的插件,您可以扩展 Android Gradle Plugin 并根据您的项目需求自定义您的构建!

ResponsiveAppWidget.kt 演示

ResponsiveAppWidget.kt

郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。