佩戴瓷砖

为 Google Wear OS 智能手表创建应用程序。
最新更新 稳定版 候选版本 Beta 版 Alpha 版
2024 年 8 月 7 日 1.4.0 - - -

声明依赖项

要添加对 Wear 的依赖项,您必须将 Google Maven 存储库添加到您的项目中。阅读Google 的 Maven 存储库以获取更多信息。

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

Groovy

dependencies {
    // Use to implement support for wear tiles
    implementation "androidx.wear.tiles:tiles:1.4.0"

    // Use to utilize standard components and layouts in your tiles
    implementation "androidx.wear.protolayout:protolayout:1.2.0"

    // Use to utilize components and layouts with Material Design in your tiles
    implementation "androidx.wear.protolayout:protolayout-material:1.2.0"

    // Use to include dynamic expressions in your tiles
    implementation "androidx.wear.protolayout:protolayout-expression:1.2.0"

    // Use to preview wear tiles in your own app
    debugImplementation "androidx.wear.tiles:tiles-renderer:1.4.0"

    // Use to fetch tiles from a tile provider in your tests
    testImplementation "androidx.wear.tiles:tiles-testing:1.4.0"
}

Kotlin

dependencies {
    // Use to implement support for wear tiles
    implementation("androidx.wear.tiles:tiles:1.4.0")

    // Use to utilize standard components and layouts in your tiles
    implementation("androidx.wear.protolayout:protolayout:1.2.0")

    // Use to utilize components and layouts with Material Design in your tiles
    implementation("androidx.wear.protolayout:protolayout-material:1.2.0")

    // Use to include dynamic expressions in your tiles
    implementation("androidx.wear.protolayout:protolayout-expression:1.2.0")

    // Use to preview wear tiles in your own app
    debugImplementation("androidx.wear.tiles:tiles-renderer:1.4.0")

    // Use to fetch tiles from a tile provider in your tests
    testImplementation("androidx.wear.tiles:tiles-testing:1.4.0")
}

有关依赖项的更多信息,请参阅添加构建依赖项

反馈

您的反馈有助于使 Jetpack 变得更好。如果您发现新问题或有改进此库的想法,请告知我们。在创建新问题之前,请查看此库中现有的问题。您可以通过点击星形按钮为现有问题添加您的投票。

创建新问题

有关更多信息,请参阅问题跟踪器文档

版本 1.4

版本 1.4.0

2024 年 8 月 7 日

androidx.wear.tiles:tiles-*:1.4.0 已发布。版本 1.4.0 包含这些提交

自 1.3.0 以来重要的更改

  • 用于在 Android Studio 中为 Tiles 预览指定自定义平台数据的工具支持。

版本 1.4.0-rc01

2024 年 7 月 24 日

androidx.wear.tiles:tiles-*:1.4.0-rc01 已发布,与上一个版本相比没有变化。版本 1.4.0-rc01 包含这些提交

版本 1.4.0-beta01

2024 年 7 月 10 日

androidx.wear.tiles:tiles-*:1.4.0-beta01 已发布。版本 1.4.0-beta01 包含这些提交

新功能

Wear Tiles 1.4.0-beta01 版本表示该库的功能已完成,并且 API 已锁定(实验性功能除外)。Wear Tiles 1.4 包含以下新功能和 API

  • 用于在 Android Studio 中为 Tiles 预览指定自定义平台数据的工具支持。

版本 1.4.0-alpha05

2024 年 6 月 26 日

androidx.wear.tiles:tiles-*:1.4.0-alpha05 已发布。版本 1.4.0-alpha05 包含 这些提交

版本 1.4.0-alpha04

2024 年 5 月 29 日

androidx.wear.tiles:tiles-*:1.4.0-alpha04 已发布。版本 1.4.0-alpha04 包含 这些提交

版本 1.4.0-alpha03

2024 年 5 月 14 日

androidx.wear.tiles:tiles-*:1.4.0-alpha03 已发布。版本 1.4.0-alpha03 包含 这些提交

错误修复

  • TileService#getActiveTilesAsync 现在使用 WearSdk API(如果可用)提供更准确的结果。(I57bd8

版本 1.4.0-alpha02

2024 年 5 月 1 日

androidx.wear.tiles:tiles-*:1.4.0-alpha02 已发布。版本 1.4.0-alpha02 包含 这些提交

API 更改

  • tileId 移动到构建器构造函数参数作为必填字段,并在 getter 中记录默认时间戳值。(I98c2b
  • 添加 TileInteractionEventTileEnterTileLeave 协议消息以及批量处理磁贴进入/离开事件所需的 Java 包装器。(I112b0
  • 重构 TileRenderer 以使用构建器而不是 TileRenderer.Config 对象。(Ib66f9
  • TileRenderer.Config 添加 platformDataProviders 属性。(I6030d
  • TileRenderer 添加一个新的构造函数,该构造函数支持新的 TileRenderer.Config 类。其他构造函数已弃用。(Iae7ff
  • TilePreviewData 添加 platformDataValues 字段以允许覆盖平台数据值。(If437a

错误修复

  • 记录 TileRenderer.Config.Builder#setTilesTheme 的默认值为零。(Iced18

版本 1.4.0-alpha01

2024 年 3 月 6 日

androidx.wear.tiles:tiles-*:1.4.0-alpha01 已发布。版本 1.4.0-alpha01 包含 这些提交

版本 1.3

版本 1.3.0

2024 年 2 月 7 日

androidx.wear.tiles:tiles-*:1.3.0 已发布。版本 1.3.0 包含这些提交。

自 1.2.0 版本以来的重要更改

  • 更新了磁贴预览支持的工具。
  • 支持查询属于应用的活动磁贴。

其他更改

版本 1.3.0-rc01

2024 年 1 月 24 日

androidx.wear.tiles:tiles-*:1.3.0-rc01 已发布。版本 1.3.0-rc01 包含这些提交。

API 更改

  • TileService#getActiveTilesSnapshotAsync 重命名为 getActiveTilesAsync。(If6b87

版本 1.3.0-beta01

2024 年 1 月 10 日

androidx.wear.tiles:tiles-*:1.3.0-beta01 已发布。版本 1.3.0-beta01 包含这些提交。

Wear Tiles 1.3.0-beta01 版本表示该库的功能已完成,并且 API 已锁定(实验性功能除外)。Wear Tiles 1.3 包含以下新功能和 API

  • Wear Tiles 工具模块已更新以支持磁贴预览,并准备发布。
  • 支持使用 TileService.getActiveTilesSnapshotAsync 查询属于应用的哪些磁贴处于活动状态。

版本 1.3.0-alpha04

2023 年 12 月 13 日

androidx.wear.tiles:tiles-*:1.3.0-alpha04 已发布。版本 1.3.0-alpha04 包含这些提交。

版本 1.3.0-alpha03

2023 年 11 月 29 日

androidx.wear.tiles:tiles-*:1.3.0-alpha03 已发布。版本 1.3.0-alpha03 包含这些提交。

新功能

  • 添加了一个新的 API TileService#getActiveTilesSnapshotAsync 用于查询属于应用的哪些磁贴处于活动状态。(I6850e

API 更改

  • @TilePreview 重命名为 @PreviewIfc08a

版本 1.3.0-alpha02

2023 年 11 月 15 日

androidx.wear.tiles:tiles-*:1.3.0-alpha02 已发布。版本 1.3.0-alpha02 包含这些提交。

新功能

  • 我们添加了一个实验性 API,可以根据文本在父级容器中的空间自动调整文本大小。(Ibbe63

版本 1.3.0-alpha01

2023 年 10 月 18 日

androidx.wear.tiles:tiles-*:1.3.0-alpha01 已发布。版本 1.3.0-alpha01 包含这些提交。

新功能

  • 提供上下文作为预览方法参数,而不是 TilePreviewData 回调参数。(I5e97d
  • Wear Tiles 工具模块已更新以支持磁贴预览,并准备发布。(I63d0f

版本 1.2

版本 1.2.0

2023 年 8 月 9 日

androidx.wear.tiles:tiles-*:1.2.0 已发布。版本 1.2.0 包含这些提交。

自 1.1.0 版本以来的重要更改

  • Wear Tiles 1.2.0 稳定版发布(了解更多
  • Tiles 1.2 添加了对将布局元素绑定到平台数据(以实现更快的更新)和动画的支持。有关迁移说明,请参阅 (1.2.0-rc01) 的版本说明。

版本 1.2.0-rc01

2023 年 7 月 26 日

androidx.wear.tiles:tiles-*:1.2.0-rc01 已发布。版本 1.2.0-rc01 包含这些提交。

  • 在 v1.2 版本中,Tiles 库进行了重构,大多数功能和 API 已迁移到新的 ProtoLayout 库(包 androidx.wear.protolayout),Tiles (androidx.wear.tiles) 中保留了一小部分。

    • 所有类名保持不变,仅对 v1.1 进行了添加。
    • 大多数 API 保持不变,唯一更改的是包名称。
    • TileService/TileBuilder 中的一些方法已弃用,现在具有重命名的版本,这些版本接受新的 ProtoLayout 类型而不是已弃用的 Tiles 类型。
  • 为了使此迁移更容易,我们整理了一些简短的说明和脚本,这些说明和脚本可以执行此重命名操作,请参阅 此处

API 更改

  • 我们将磁贴中布局的最大深度限制为 30 个嵌套元素。如果超过此深度,磁贴渲染器将显示之前已膨胀的布局。(I8a74b

版本 1.2.0-beta01

2023 年 6 月 21 日

androidx.wear.tiles:tiles-*:1.2.0-beta01 已发布,无更改。版本 1.2.0-beta01 包含这些提交。

版本 1.2.0-alpha07

2023 年 6 月 7 日

androidx.wear.tiles:tiles-*:1.2.0-alpha07 已发布。版本 1.2.0-alpha07 包含这些提交。

新功能

  • TileRenderer.setState 允许设置渲染会话的状态。此状态将应用于当前布局和任何未来布局(直到设置新状态为止)(Iaaf35
  • protolayout 类型现在在所有 tile-renderer API 中都得到完全支持。(I428b0

错误修复

  • 现在可以在 ProtoLayoutViewInstance 中设置自定义主题。(Iae8c0

版本 1.2.0-alpha06

2023 年 5 月 24 日

androidx.wear.tiles:tiles-*:1.2.0-alpha06 已发布。版本 1.2.0-alpha06 包含这些提交。

API 更改

  • StateEntryValue 重命名为 DynamicDataValue,并更新状态 API 以使用 DynamicDataKeyIf1c01
  • 我们限制了 StateStore 中允许的条目数量,以确保每个 StateStore 实例的内存使用量和状态更新时间得到良好控制。因此,开发人员需要确保他们在映射中没有超过 MAX_STATE_ENTRY_COUNT 个条目,否则在创建或更新 StateStore 时会收到 IllegalStateException。(Ibadb3

版本 1.2.0-alpha05

2023 年 5 月 10 日

androidx.wear.tiles:tiles-*:1.2.0-alpha05 已发布。版本 1.2.0-alpha05 包含这些提交。

新功能

  • 我们已将磁贴 ID 添加到磁贴事件和请求中。此 ID 可用于将某些数据与轮播中的磁贴实例关联。(Ic4f83

API 更改

  • TileRenderer.inflateAsync 现在返回 ListenableFuture。(I2f2b9
  • protolayout 库中具有替换的磁贴构建器现在标记为已弃用。(Ie2029

错误修复

  • TileService.onTileResourcesRequest 的 javadoc 现在阐明了系统何时可能调用此方法。(Iee037

版本 1.2.0-alpha04

2023 年 4 月 19 日

androidx.wear.tiles:tiles-*:1.2.0-alpha04 已发布。 版本 1.2.0-alpha04 包含以下提交。

错误修复

  • 当需要时,gradle 依赖项现在已正确设置为 api 而不是 implementation。(I40503

版本 1.2.0-alpha03

2023 年 4 月 5 日

androidx.wear.tiles:tiles-*:1.2.0-alpha03 已发布。 版本 1.2.0-alpha03 包含以下提交。

API 更改

  • 我们已为 TileRenderer 添加了对 androidx.wear.protolayout 类型的支持(I4ac7f
  • ObservableStateStore 已重命名为 StateStore。(Ieb0e2
  • TileRenderer 添加了 protolayout 类型的重载方法(I4ac7f
  • TileRenderer 中启用动画(I07dcf

版本 1.2.0-alpha02

2023 年 3 月 22 日

androidx.wear.tiles:tiles-*:1.2.0-alpha02 已发布。 版本 1.2.0-alpha02 包含以下提交。

API 更改

  • Tiles Material 库已弃用。请使用具有相同功能的新 ProtoLayout Material 库。(If242b

错误修复

  • TileRenderer 已更新为使用 protolayout 库中的新功能。(I832f9

版本 1.2.0-alpha01

2023 年 3 月 8 日

androidx.wear.tiles:tiles-*:1.2.0-alpha01 已发布。 版本 1.2.0-alpha01 包含以下提交。

新功能

  • 我们已将 onTileResourceRequest 添加到 TileService 中,用于提供来自 protolayout 库的资源。(983d9c5
  • 我们已更新 ResourcesRequestTileRequest 以支持来自 protolayout 库的 StateDeviceParameters 类型。(88fa01d
  • 我们已更新 TileBuilders.Tile 以支持来自 protolayout 库的 StateTimeline 类型。(168619c

错误修复

  • Javadoc 改进。(I3ed73
  • onPrimary 和 surface 的默认颜色已更改。(I0b039

版本 1.1

版本 1.1.0

2022 年 8 月 24 日

androidx.wear.tiles:tiles-*:1.1.0 已发布。 版本 1.1.0 包含以下提交。

自 1.0.0 以来重要更改

  • 这是第一个包含 Tiles Material 库的稳定版本(在我们的 博客 上了解更多信息)。
  • 此库包含符合 Material 指南且易于使用的组件和布局。包含的组件有 ButtonChipCompactChipTitleChipCircularProgressIndicatorText。所有这些组件都有自己的颜色对象,可以使用主 Colors 类构建,以便轻松地将相同的主题应用于所有组件。除了颜色之外,还有一个 Typography 类,可以使用字体名称轻松获取 FontStyle 对象。
  • 除了组件之外,还有推荐的磁贴布局 - PrimaryLayoutEdgeContentLayoutMultiButtonLayoutMultiSlotLayout。所有布局都应用了推荐的填充和样式,这些填充和样式符合 Material 指南。
  • 有关 Tiles Material 库中组件和布局的列表,请参阅 Tiles 的发行说明。

版本 1.1.0-rc01

2022 年 8 月 10 日

androidx.wear.tiles:tiles-*:1.1.0-rc01 已发布。 版本 1.1.0-rc01 包含以下提交。

  • Beta 版和 RC 版之间没有新的更改。

版本 1.1.0-beta01

2022 年 7 月 27 日

androidx.wear.tiles:tiles-*:1.1.0-beta01 已发布。 版本 1.1.0-beta01 包含以下提交。

Tiles Material 库的 1.0.0-beta01 版本包含符合 Material 指南且易于构建的组件和布局。

包含的组件有

  • Button - 可点击的圆形对象,带有图标、文本或图像,并具有 3 种预定义的大小。
  • Chip - 可点击的体育场形状的对象,可以包含图标、主要和次要标签,并且具有固定高度和可自定义宽度。
  • CompactChipTitleChip - 标准 Chip 的两种变体,分别具有较小和较大的高度,并且可以包含一行文本。
  • CircularProgressIndicator - 屏幕边缘周围的彩色弧线,具有给定的起始和结束角度,可以描述完整的或部分的圆形,并在其后面具有完整的进度弧线。
  • Text - 使用推荐的 Wear Material 字体样式的样式化文本

所有这些组件都有自己的颜色对象,可以使用主 Colors 类构建,以便轻松地将相同的主题应用于所有组件。除了颜色之外,还有一个 Typography 类,可以使用字体名称轻松获取 FontStyle 对象。

除了组件之外,还有推荐的磁贴布局

  • PrimaryLayout - 可以通过添加主要或次要标签、中间内容以及底部的主要芯片来自定义的布局。此布局内的主要内容可以作为 MultiSlotLayoutMultiButtonLayout 对象添加。
  • EdgeContentLayout - 用于在边缘周围承载 CircularProgressIndicator,并在其内部包含主要内容,并在其周围包含主要或次要标签的布局。
  • MultiButtonLayout - 可以包含 1 到 7 个按钮的布局,根据其数量排列,符合 Material 指南。
  • MultiSlotLayout - 一种行样式布局,具有水平对齐和间隔的槽(用于图标或其他小型内容)。

所有布局都应用了推荐的填充和样式,这些填充和样式符合 Material 指南。

API 更改

  • 对 Chip 组件进行了重大重构,包括在 Builder 中分离设置器,以便每个内容部分都分别传递,并重命名以匹配指南(主要标签、次要标签、图像资源 ID)。此外,如果未设置,则会自动生成内容描述。(I57622
  • ProgressIndicatorLayout 已重命名为 EdgeContentLayout。(Ic1aa6
  • 按钮大小内容已重命名为名称 without _BUTTON 后缀,并在 Button 中添加了其他 Javadoc 说明。(I1dfe2

错误修复

  • 已更新 Material 布局中的边距、填充和整体排列,以适应所有类型的推荐布局和屏幕尺寸和形状。
  • Material 布局改进。在 MultiSlotLayout 中,插槽现在在宽度上是灵活的,它们将包裹内容而不是固定大小。(I52919)、(If18b4
  • 已增加 CompactChip 上可点击区域的大小,以遵循可访问性指南。(Ie8264

版本 1.1.0-alpha09

2022 年 6 月 29 日

androidx.wear.tiles:tiles-*:1.1.0-alpha09 已发布。 版本 1.1.0-alpha09 包含以下提交。

新功能

  • 我们已添加了在 ProgressIndicatorLayout 中添加可选标签的支持。(I30788

API 更改

  • ElementMetadata 的帮助器方法现在接受 ElementMetadata 而不是 Modifiers。(I5a70f

错误修复

  • 已删除 CompactChip 上 9 个字符的限制。如果文本太大而无法在 PrimaryLayout 中的屏幕上显示,则会将其省略号化。(Id56ec
  • Chip 中的 Getter 现在具有 Content 后缀。(Iba437
  • Tiles Material 类中的 Javadoc 说明。(I56e41)、(I80f31)、(Iba437

版本 1.1.0-alpha08

2022 年 6 月 1 日

androidx.wear.tiles:tiles-*:1.1.0-alpha08 已发布。 版本 1.1.0-alpha08 包含以下提交。

新功能

  • 已将 Metadata 标记添加到 Modifiers 中,用于跟踪组件的元数据,并向 Helper 类添加了帮助器方法。(I70db2)、(I30c3d
  • 已向 Tiles Material 中的所有组件和布局添加了静态方法 fromLayoutElement。它应该用于测试,将从访问容器内容中获得的 LayoutElement 转换为其原始类型。(Ia572a)、(Idbd8a)、(I3ae13)、(I292fe)、(I8b20f)、(I3cacb)、(I84b24

版本 1.1.0-alpha07

2022年5月18日

发布了 androidx.wear.tiles:tiles-*:1.1.0-alpha07版本 1.1.0-alpha07 包含以下提交。

API 更改

  • 已向 ProgressIndicatorLayoutPrimaryLayout 添加了与内容不同设置程序相关的 Getter。现在,这些类中的所有 Setter 都有匹配的 Getter。(Iddbe5)(Iabe4e
  • Material Components 中内容说明的 Getter 现在可以返回 null,因为其 Setter 不是必需的。
  • 尝试创建未传入内容的按钮将导致 IllegalArgumentException。(I7fc0c
  • ChipColors 中与图标颜色相关的字段已从 iconTintColor 重命名为 iconColor。(Ic053b

错误修复

  • 为 Tiles Material 中的布局添加了 androidTests。(I96404

版本 1.1.0-alpha06

2022年5月11日

发布了 androidx.wear.tiles:tiles-*:1.1.0-alpha06版本 1.1.0-alpha06 包含以下提交。

新功能

  • 新的布局已添加到 Material 布局子库中 - MultiButtonLayout。它表示一个布局,可以包含 1 到 7 个按钮,这些按钮根据 Material 指南排列成一行。在大多数情况下,此布局应作为内容传递给 PrimaryLayout。(Ib727f

API 更改

  • MultiSlotLayout 已重构为仅包含插槽。此布局应作为内容传递给主 PrimaryLayout。(I1870f
  • 更新了 CircularProgressIndicator 的默认颜色定义,使其为一个值而不是主颜色和次颜色。(I64a51
  • 添加了 MultiSlotLayout 中水平间隔符的 Getter。(I11e1e

错误修复

  • 已将组件的 Android 测试添加到 Tiles Material。(I20041

版本 1.1.0-alpha05

2022年4月6日

发布了 androidx.wear.tiles:tiles-*:1.1.0-alpha05版本 1.1.0-alpha05 包含以下提交。

新功能

  • 添加了辅助方法,用于将 LayoutElement 转换为 Layout、Timeline、TimelineEntry,以便更轻松地构建 Tiles。(I2f6d1
  • 已将 Colors 对象添加到 Material 库中,作为主题跨组件传递颜色。(I0792c

API 更改

  • Material 文本组件要求在构造函数中传入文本。现在可以通过设置权重来自定义此组件。(I25dbd
  • 删除了 ChipDefaults 中在公共 Setter 中未使用的常量。(I7baed
  • 删除了 CompactChipTitleChip 中没有匹配 Setter 的 Getter。(I99e85
  • 删除了 ProgressIndicatorDefaults 中的 DEFAULT_PADDING。(Idabcd
  • Material 组件现在接受 CharSequence 作为内容说明,而不是 String。(I5b21a

错误修复

  • 重构了 Button 中可选参数的 Setter 实现。(Ib7135
  • 已将字体样式变体添加到排版中的字体。(I8dbc6

版本 1.1.0-alpha04

2022年3月23日

发布了 androidx.wear.tiles:tiles-*:1.1.0-alpha04版本 1.1.0-alpha04 包含以下提交。

新功能

  • 可以向 PrimaryLayout 添加可选的主标签或次标签。(Ib9916
  • 可以通过设置溢出、斜体、下划线等来自定义文本组件。(I703f7

API 更改

  • 已从 Tiles Material API 中删除默认颜色常量。(I0ab55
  • Tiles Material 中所有可点击的组件都需要在其构建器的构造函数中使用 Clickable 对象,而不是 Action。(I2f101

错误修复

  • 文本现在将在 Chip 和文本组件中显示溢出时的省略号。(I8a2f8
  • 改进了用户字体比例设置为大时组件的外观。(Ib63b1
  • 阐明了 PrimaryLayoutsetPrimaryChipContent 的 Javadoc。(Ie6296

版本 1.1.0-alpha03

2022年2月23日

发布了 androidx.wear.tiles:tiles-*:1.1.0-alpha03版本 1.1.0-alpha03 包含以下提交。

API 更改

  • 已向 TIles Material 添加了具有推荐排版样式的 Text 组件。(Iec0ae

版本 1.1.0-alpha02

2022年2月9日

发布了 androidx.wear.tiles:tiles-*:1.1.0-alpha02版本 1.1.0-alpha02 包含以下提交。

新功能

  • 添加了一个新的子库 layouts 到 Tiles Material 中。它包含带有推荐填充和边距的固定 Tiles 布局,以加快 Tile 开发并简化实现。初始布局为
    • PrimaryLayout (I7ba91),它表示底部带有主芯片,中间带有内容的布局。
    • MultiSlotLayout (I32104),它表示一个布局,第 1 行和第 3 行带有标签,第 2 行带有水平对齐和间距的插槽,所有这些都紧随第 4 行,第 4 行包含主芯片。
    • ProgressIndicatorLayout (I9fec6),它表示一个布局,圆形进度指示器位于屏幕边缘,给定的内容位于内部。
  • CircularProgressIndicator (Ic4b88) 已添加到 Tiles Material 组件中。

API 更改

  • 重命名了 TitleChip 使用的剩余常量,使其名称中包含标题。(I14f4c
  • 已向 Chip 添加了 setHorizontalAlignment 方法。(Ie6e0b

版本 1.1.0-alpha01

2022年1月26日

发布了 androidx.wear.tiles:tiles-*:1.1.0-alpha01版本 1.1.0-alpha01 包含以下提交。

新功能

  • 添加了新的库 Tiles Material。它包含用于更快、更轻松地使用 Material 设计构建 Tiles 布局的组件。初始组件为
    • 按钮
    • 芯片
    • 紧凑型芯片
    • 标题芯片

错误修复

  • 修复了 TileUiClient 中导致缓存资源被丢弃的错误。(I60e0b

版本 1.0

版本 1.0.1

2022年1月26日

发布了 androidx.wear.tiles:tiles-*:1.0.1版本 1.0.1 包含以下提交。

错误修复

  • 修复了 TileUiClient 中导致缓存资源被丢弃的错误。(I60e0b

版本 1.0.0

2021年11月3日

发布了 androidx.wear.tiles:tiles-*:1.0.0版本 1.0.0 包含以下提交。

1.0.0 的主要功能

  • Wear Tiles 库提供了构建 Wear OS 设备自定义 Tiles 的功能,以及允许系统获取您的 Tile 并将其显示在表盘旁边的类。
  • tiles-renderer 允许您将 Tile 显示为 Android Activity 的一部分,从而方便快速测试您的 Tile 布局。

版本 1.0.0-rc01

2021年10月27日

发布了 androidx.wear.tiles:tiles-*:1.0.0-rc01版本 1.0.0-rc01 包含以下提交。

版本 1.0.0-beta01

2021年10月13日

发布了 androidx.wear.tiles:tiles-*:1.0.0-beta01版本 1.0.0-beta01 包含以下提交。

错误修复

  • 修复了 TileUiClient 中在提供空资源版本时发生的 NullPointerException。(I0586e

版本 1.0.0-alpha12

2021年9月29日

发布了 androidx.wear.tiles:tiles-*:1.0.0-alpha12版本 1.0.0-alpha12 包含以下提交。

错误修复

  • UpdateScheduler 不再使用弱引用,修复了 TileUiClient 无法更新的问题(I1120db/199061124)

  • 声明 SysUiTileUpdateRequester 查询 PacakgeManager,修复了 Tile 更新在 R+ 设备上无法正常工作的问题。(I1120d

版本 1.0.0-alpha11

2021年9月1日

发布了 androidx.wear.tiles:tiles-*:1.0.0-alpha11版本 1.0.0-alpha11 包含以下提交。

新功能

  • 添加并发布了一个测试库,androidx.wear.tiles:tiles-testing 库,以便开发人员能够更轻松地测试其 Tiles。(Iedb6b

API 更改

  • 将 TileProviderService 重命名为 TileService。(I1ad2c

  • 磁贴构建器已更新;已弃用静态 .builder() 方法,转而调用 new Foo.Builder(),并且已删除接受 Builder 实例的 setter 重载。(Ia9606)
  • TileRenderer 现在应使用 UI 上下文,而不是应用程序上下文。(I84b61)

错误修复

  • 修复在某些情况下导致应用多个下划线的错误。(Ib6712)

版本 1.0.0-alpha10

2021 年 8 月 18 日

androidx.wear.tiles:tiles:1.0.0-alpha10androidx.wear.tiles:tiles-proto:1.0.0-alpha10androidx.wear.tiles:tiles-renderer:1.0.0-alpha10 已发布。版本 1.0.0-alpha10 包含这些提交。

API 更改

  • 已从公共 API 中删除布局检查器。这些检查器将始终启用,但仅在检查失败时才会发出警告。(Ie9f29)
  • TileRenderer 现在接受 UI 上下文,而不是 Application Context。

错误修复

  • 修复了阻止 Spannable 中的可点击元素被点击的错误。

版本 1.0.0-alpha09

2021 年 7 月 21 日

androidx.wear.tiles:tiles:1.0.0-alpha09androidx.wear.tiles:tiles-proto:1.0.0-alpha09androidx.wear.tiles:tiles-renderer:1.0.0-alpha09 已发布。版本 1.0.0-alpha09 包含这些提交。

新功能

  • 已将布局检查器添加到 Wear Tiles 的渲染器中。(I3a869)
    • 这些检查器用于验证磁贴中的最佳实践。首先,如果磁贴不包含任何带有 Semantics 修饰符的元素,这些检查器将发出警告。
  • 添加了 DefaultTileProviderClientTestingTileProviderClient 构造函数 的文档。(I9f4b9)

API 更改

  • TileProviderClient 中的重命名 (I0ec36)
    • getApiVersion -> requestApiVersion
    • tile/resourcesRequest -> requestTile/Resources
    • onTileFooEvent -> sendOnTileFooEvent
  • 已将布局检查器添加到 Wear Tiles 的渲染器中。(I3a869)

错误修复

  • 确保启动操作目标没有特殊权限。(I39136)

版本 1.0.0-alpha08

2021 年 6 月 30 日

androidx.wear.tiles:tiles:1.0.0-alpha08androidx.wear.tiles:tiles-proto:1.0.0-alpha08androidx.wear.tiles:tiles-renderer:1.0.0-alpha08 已发布。版本 1.0.0-alpha08 包含这些提交。

新功能

  • Spannables 现在支持 line_height 而不是 line_spacing。

API 更改

  • 添加对 Spannables 中 line_height 的支持,删除 line_spacing。(Ibeb54)
    • 使用 line_spacing 的代码应移植为改用 line_height。

错误修复

  • 修复使用比例尺寸时的错误。(I37ace)
  • 修复阻止 Text 元素具有内容描述的错误。(Id2c7d)

版本 1.0.0-alpha07

2021 年 6 月 16 日

androidx.wear.tiles:tiles:1.0.0-alpha07androidx.wear.tiles:tiles-proto:1.0.0-alpha07androidx.wear.tiles:tiles-renderer:1.0.0-alpha07 已发布。版本 1.0.0-alpha07 包含这些提交。

API 更改

  • 添加 TileProviderClient 接口,并公开 DefaultTileProviderClient,允许实现绑定到 TileProviderService 接口。(I69165)

版本 1.0.0-alpha06

2021 年 6 月 2 日

androidx.wear.tiles:tiles:1.0.0-alpha06androidx.wear.tiles:tiles-proto:1.0.0-alpha06androidx.wear.tiles:tiles-renderer:1.0.0-alpha06 已发布。版本 1.0.0-alpha06 包含这些提交。

API 更改

  • 所有 Builder 类现在都包含所有属性的 getter。请注意,这些 getter 仅用于测试目的 (I9d155)
  • 包更改:androidx.wear.tiles.builders 中的类已移动到 androidx.wear.tiles
  • 向磁贴添加实验性着色支持。(I38929)
  • 已将 LayoutElementBuilders.HALIGN_* 重命名为 LayoutElementBuilders.HORIZONTAL_ALIGN_* (I67e58)
  • 已将 LayoutElementBuilders.VALIGN_* 重命名为 LayoutElementBuilders.VERTICAL_ALIGN_* (I67e58)
  • 已将 LayoutElementBuilders.SPAN_VALIGN_* 重命名为 LayoutElementBuilders.SPAN_VERTICAL_ALIGN_* (I67e58)
  • 添加了请求和事件的构建器类。(Ib5cf4)
  • 已将 TileProviderService 迁移为使用来自 RequestBuildersEventBuilders 的请求和事件类,而不是 RequestReaders/EventReaders(例如,onTileRequest 现在为您提供 RequestBuilders.TileRequest,而不是 RequestReaders.TileRequest)。(I46ea1)

错误修复

  • 修复了磁贴渲染器中异步图像加载的错误。(Iad9b0)
  • 修复了在将宽度或高度设置为 expand() 的图像放置到宽度或高度设置为 wrap()Box 中时的布局错误。(I33770)

版本 1.0.0-alpha05

2021 年 5 月 18 日

androidx.wear.tiles:tiles:1.0.0-alpha05androidx.wear.tiles:tiles-proto:1.0.0-alpha05androidx.wear.tiles:tiles-renderer:1.0.0-alpha05 已发布。版本 1.0.0-alpha05 包含这些提交。

API 更改

  • 已从传入的磁贴事件(TileAddEventTileRemoveEventTileEnterEventTileLeaveEventTileRequest)中删除 getTileId。(Ifbba2)
  • 已将 ImageResource#setAndroidResourceByResid 重命名为 setAndroidResourceByResId (I4ba6e)
  • 已将 TimelineManager#deInit 重命名为 close,并实现了 AutoCloseable。(I5dff2)

版本 1.0.0-alpha04

2021 年 5 月 5 日

androidx.wear.tiles:tiles:1.0.0-alpha04androidx.wear.tiles:tiles-proto:1.0.0-alpha04androidx.wear.tiles:tiles-renderer:1.0.0-alpha04 已发布。版本 1.0.0-alpha04 包含这些提交。

API 更改

  • 隐藏了具体的 TileProviderService 类。
    • 使 TileUpdateRequester 接受 Class<? extends TileProviderService>。(Ib7cca)
  • 添加了向 AndroidActivity 添加额外数据的功能。(I748f4)

磁贴版本 1.0.0-alpha03

2021 年 4 月 21 日

androidx.wear.tiles:tiles:1.0.0-alpha03androidx.wear.tiles:tiles-proto:1.0.0-alpha03androidx.wear.tiles:tiles-renderer:1.0.0-alpha03 已发布。版本 1.0.0-alpha03 包含这些提交。

API 更改

  • 重命名 TileManager -> TileClient
    • 重命名 TileManager#create -> TileClient#connect (I91839)

错误修复

  • 添加了 Proguard 规则以确保 tilestiles-renderer 在启用 Proguard 时正常工作 (Ie3d85)

版本 1.0.0-alpha02

2021 年 4 月 7 日

androidx.wear.tiles:tiles:1.0.0-alpha02androidx.wear.tiles:tiles-proto:1.0.0-alpha02androidx.wear.tiles:tiles-renderer:1.0.0-alpha02 已发布。版本 1.0.0-alpha02 包含这些提交。

API 更改

  • androidx.wear:wear-tiles 已移动组,现在应称为 androidx.wear.tiles:tiles
  • androidx.wear:wear-tiles-renderer 已移动组,现在应称为 androidx.wear.tiles:tiles-renderer
  • TileRenderer.LoadActionListener 现在使用 androidx.wear.tiles.builders.StateBuilders.State 的实例,而不是 androidx.wear.tiles.proto.StateProto.State 的实例。
  • TileRenderer 现在接受来自 androidx.wear.tiles.builders.ResourceBuilders.Resources 的磁贴资源,而不是 androidx.wear.tiles.renderer.ResourceAccessors 的实例。

错误修复

  • 修复了无法使用 LoadActionListener 的问题,因为它公开了内部类。

版本 1.0.0-alpha01

2021 年 3 月 10 日

androidx.wear:wear-tiles:1.0.0-alpha01androidx.wear:wear-tiles-proto:1.0.0-alpha01androidx.wear:wear-tiles-renderer:1.0.0-alpha01 已发布。版本 1.0.0-alpha01 包含这些提交。

新功能

  • Wear Tiles 渲染器库提供了构建 Wear OS 设备自定义磁贴的功能,以及允许系统获取您的磁贴并将其显示在表盘旁边的类。