Glance

使用 Jetpack Compose 样式的 API 构建远程 Surface 的布局。
最近更新时间 稳定版 候选版本 Beta 版 Alpha 版
2022 年 10 月 5 日 - - - 1.0.0-alpha05

声明依赖项

如需添加 Glance 的依赖项,您必须将 Google Maven 代码库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库

在应用或模块的 build.gradle 文件中添加所需工件的依赖项:

Groovy

dependencies {
    // For AppWidgets support
    implementation "androidx.glance:glance-appwidget:1.0.0-alpha05"

    // For Wear-Tiles support
    implementation "androidx.glance:glance-wear-tiles:1.0.0-alpha05"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.0-beta03"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    // For AppWidgets support
    implementation("androidx.glance:glance-appwidget:1.0.0-alpha05")

    // For Wear-Tiles support
    implementation("androidx.glance:glance-wear-tiles:1.0.0-alpha05")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.0-beta03"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

如需详细了解依赖项,请参阅添加 build 依赖项

反馈

您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库的改进有自己的见解,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。

创建新问题

如需了解详情,请参阅问题跟踪器文档

版本 1.0.0

版本 1.0.0-alpha05

2022 年 10 月 5 日

发布了 androidx.glance:glance:1.0.0-alpha05androidx.glance:glance-appwidget:1.0.0-alpha05androidx.glance:glance-wear-tiles:1.0.0-alpha05版本 1.0.0-alpha05 中包含这些提交内容。

新功能

  • GlanceAppWidgetManager 添加了 requestPinGlanceAppWidget,使应用能够提示用户将基于 Glance 的 widget 添加到其主屏幕。(Ic6e47)
  • GlanceAppWidgetReceiver 添加了 ACTION_DEBUG_UPDATE,使开发者能够在已取得 root 权限的设备和模拟器上强制从 adb 更新其 widget。(I94ae1)

API 变更

  • 移除了 Glance 模板中的标题操作按钮,以简化用例。(Ie4387)
  • 重构了 Single Entity 模板,以重复使用 Block 子系统设计。(Iecd2c)
  • 重构了 Glance List 模板,以使用 Text/Image/Action Block 设计。(If0cc1)
  • TextBlockImageBlock 添加了优先级数字范围。(I73100)

bug 修复

  • 移除了 Material3 依赖项。(I28d1c)
  • 迁移到更加一致的系统,以便在 Glance 模板布局中添加外边距和间距。(I29773)
  • 修复了会导致系统无法构建缩减版本的格式有误的 Proguard 规则。

版本 1.0.0-alpha04

2022 年 8 月 10 日

发布了 androidx.glance:glance:1.0.0-alpha04androidx.glance:glance-appwidget:1.0.0-alpha04androidx.glance:glance-wear-tiles:1.0.0-alpha04版本 1.0.0-alpha04 中包含这些提交内容

新功能

  • 添加了 Button 着色功能。
  • 添加了 GlanceComposable 注解,可更好地进行编译时检查。
  • 添加了 Wear 专用的 Glance 功能。

API 变更

  • 更新了 Glance Gallery Data API 和精简视图。(Ibc7a8)
  • 添加了用于配置按钮的 ButtonColors。(Iea88db/236305351
  • ColorProvider.resolve 重命名为 ColorProvider.getColor (Ic9dfe)
  • TextStyle 添加了 copy() 方法。(I9aef6)
  • 添加了 ColorProviders 类,可用作 Glance 主题的一部分。(I848b9b/237012816
  • 为列表样式和折叠视图添加了列表模板支持。(I50cdc)
  • GlanceModiierGlanceCurvedModifier 添加语义。(Ifda7e)
  • 添加了 GlanceComposable 注解。(I5dbf0)
  • 将 Glance 模板移到主 Glance 项目中。(I9db94)
  • 添加了 ColorProvider.resolve()Ife532b/214733442
  • 添加了从现有的 appWidgetId 中获取 GlanceId 或从配置 activity 中获取 intent 的新方法(Icb70cb/230391946
  • 添加 GlanceComposable 注解。(I2c21f)
  • 添加了用于在 GlanceAppWidget 之外运行组合的 GlanceRemoteViews。(I18f92)
  • 移除了 ProgressIndicatorDefaults 中的 Color。(I40299)
  • 根据 API 审核反馈的要求,将 ActionCallback 的 onRun 方法重命名为 onAction,以便与公共 API 保持一致。(Icfa57)
  • 将 Glance 模板布局转换为使用地图 (I46bfd)
  • 添加了 RadioButton 可组合项 (I4ecce)
  • 添加了用于组合 Wear 土块的 GlanceWearTiles (Ia9f65)
  • GlanceCurvedModifier 添加了可点击项 (Iec2a0)
  • CurvedRow 作为作用域实现,并创建 DSL 以添加常规的可组合项和/或曲线元素。还在 proto 卡片中添加了 curvedLinecurvedSpacer,它们会转换为 ArcLineArcSpacer (Ib955b)
  • 更新了 core 和 appcompat 中的可为 null 性,以匹配 Tiramisu DP2 (I0cbb7)
  • 在 glance-wear-tiles 中添加了对 RuncallbackAction 的支持,目前仅支持不带参数的 RunCallbackAction (Ide64a)

外部贡献

  • 由于 test-coroutines-lib 迁移,更新了 :compose:ui:ui-test API (updateApi) (I3366d)

版本 1.0.0-alpha03

2022 年 2 月 23 日

发布了 androidx.glance:glance-*:1.0.0-alpha03版本 1.0.0-alpha03 中包含这些提交内容

新功能

  • 简化状态定义,默认采用“偏好设置”。

API 变更

  • PreferencesGlanceStateDefinition 作为默认的状态处理方法,从而简化状态处理。移除了 GlanceAppWidget.updateAppWidgetState,并引入了默认使用 PreferencesupdateAppWidgetState。(I58963)
  • 添加了 Glance TemplateText 类,并更新了模板设计 (I4e146)
  • 为 Freeform 模板添加了概要基础架构 (If03d6)
  • 更新了 SingleEntityTemplate 布局 (If925d)
  • 添加了 LazyVerticalGrid (I5f442)
  • SingleEntityTemplate 上使用 ColorProvider (I01ee0)
  • 更新了模板类名称 (I3720e)
  • 添加了 LinearProgressIndicatorCircularProgressIndicator 可组合项。(Ie116b)

bug 修复

  • 实现了初始 Glance 模板,定义了“单项模板”数据和示例模板布局 (I35837)
  • 默认情况下,对图块内容进行中心对齐 (I264be)
  • 修复了 glance-wear-tiles 中的 fillMaxSize/Width/Height 存在的 bug (I0a39f)

版本 1.0.0-alpha02

2022 年 1 月 26 日

发布了 androidx.glance:glance-*:1.0.0-alpha02版本 1.0.0-alpha02 中包含这些提交内容

新功能

此版本包含一组 API,这些 API 用于使用具有可组合项(针对“支持 Glance”进行过优化)的 Compose 运行时构建 Wear 卡片

  • 通过扩展 GlanceTileService(用于在可组合 Content() 函数中创建图块的服务)来声明穿戴式设备图块服务。
  • 穿戴式设备图块专用 Glance 可组合项:CurvedRowCurvedText
  • 通过定义 TimelineMode.SingleEntryTimelineMode.TimeBoundEntries,处理图块的不同时间轴模式。
  • LocalTimeInterval,表示特定时间间隔的 Local 组合。
  • BorderModifer 是在元素周围应用边框的 GlanceModifier

此版本还向 AppWidget Glance 添加了进度指示器。

API 变更

  • 添加了 LinearProgressIndicatorCircularProgressIndicator 可组合项。(Ie116b)
  • actionStartBroadcastReceiver 更改为 actionSendBroadcast (I7d555)
  • 将 Context 传递给 GlanceAppWidget onDelete 回调 (I4c795)

bug 修复

  • 当 OPTIONS_APPWidget_SIZES 存在,但为空时,能够正确处理。(I01f82)

版本 1.0.0-alpha01

2021 年 12 月 15 日

发布了 androidx.glance:glance:1.0.0-alpha01androidx.glance:glance-appwidget:1.0.0-alpha01androidx.glance:glance-appwidget-proto:1.0.0-alpha01版本 1.0.0-alpha01 中包含这些提交内容

初始版本的功能

  • Glance 的第一个版本包含第一组使用 Compose Runtime 构建 AppWidget 的 API,以及一组针对“Glanceables”进行了优化的新可组合项。

功能