车讯网 - 专业汽车新闻资讯门户
当前位置: 车讯网 -> 热点

谷歌发布JetpackGlanceAlpha版,构建安卓12小组件更轻松

时间:2021-12-29 05:02  |  责任编辑:叶子琪  |  来源: IT之家  |  关键词:Je  |  阅读量:15124  |  

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

谷歌发布JetpackGlanceAlpha版,构建安卓12小组件更轻松

,据谷歌开发者发布,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。丁于说这次升级的ACKAnywhere拥有一致的体验,灵活的计算能力,能力下沉,简化的容灾四大核心能力使企业在任何业务场景中使用容器服务时,都能实现统一的集群管理,统一的资源调度,统一的数据容灾和统一的应用交付。

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

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

GlanceAppWidget

GlanceAppWidgetReceiver

利用 Glance 可组合项的初始集组合您的界面: Box,Row,Column,Text,Button,LazyColumn,Image,Spacer。

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