Android NDK开发详解Wear之功能块

功能块

功能块有助于用户快速访问完成各种任务所需的信息和操作。只需在表盘上轻轻滑动一下,用户即可查看最新的天气预报、启动定时器及执行其他操作。

在这里插入图片描述

图 1. 向表盘的一侧滑动,即可查看 Wear OS 设备上的不同功能块。

用户可以选择自己想看到的功能块。目前已有许多不同用途的功能块,可供用户查看天气、设置计时器、跟踪每日健身进度、快速开始锻炼、播放歌曲、浏览即将召开的会议,以及向收藏的联系人发送消息。

彼此相邻的功能块。
在这里插入图片描述

图 2. 用户可以通过功能块轻松访问相关信息和操作。

借助 Tiles API,开发者可以构建自定义功能块,供用户添加到手表上。若要使用 Tiles API,必须以 API 级别 26 或更高级别为目标。

注意:从 1.2 版开始,大多数功能块布局 API 都位于 androidx.wear.protolayout 命名空间中。如需使用最新的 API,请完成必要的迁移步骤。

迁移到 ProtoLayout 命名空间

从版本 1.2 开始,大多数 Tiles 布局 API 都位于 androidx.wear.protolayout 命名空间中。如需使用最新的 API,请在代码中完成以下迁移步骤。

扫描二维码关注公众号,回复: 17214193 查看本文章

更新依赖项

在应用模块的 build 文件中,进行以下更改:

Groovy

  // Remove
  implementation 'androidx.wear.tiles:tiles-material:version'

  // Include additional dependencies
  implementation "androidx.wear.protolayout:1.1.0-alpha03"
  implementation "androidx.wear.protolayout-material:1.1.0-alpha03"
  implementation "androidx.wear.protolayout-expression:1.1.0-alpha03"

  // Update
  implementation "androidx.wear.tiles:tiles:1.3.0-alpha03"

Kotlin

  // Remove
  implementation("androidx.wear.tiles:tiles-material:version")

  // Include additional dependencies
  implementation("androidx.wear.protolayout:1.1.0-alpha03")
  implementation("androidx.wear.protolayout-material:1.1.0-alpha03")
  implementation("androidx.wear.protolayout-expression:1.1.0-alpha03")

  // Update
  implementation("androidx.wear.tiles:tiles:1.3.0-alpha03")

更新命名空间

在应用的 Kotlin 和 Java 代码文件中,进行以下更新。或者,您也可以执行此命名空间重命名脚本。

将所有 androidx.wear.tiles.material.* 导入内容替换为 androidx.wear.protolayout.material.。同时为 androidx.wear.tiles.material.layouts 库完成此步骤。
将大多数其他 androidx.wear.tiles.
导入内容替换为 androidx.wear.protolayout.*。

androidx.wear.tiles.EventBuilders、androidx.wear.tiles.RequestBuilders、androidx.wear.tiles.TileBuilders 和 androidx.wear.tiles.TileService 的导入内容应保持不变。

重命名 TileService 和 TileBuilder 类中的一些已废弃的方法:

TileBuilders:将 getTimeline() 重命名为 getTileTimeline(),并将 setTimeline() 重命名为 setTileTimeline()
TileService:将 onResourcesRequest() 重命名为 onTileResourcesRequest()
RequestBuilders.TileRequest:将 getDeviceParameters() 重命名为 getDeviceConfiguration(),将 setDeviceParameters() 重命名为 setDeviceConfiguration(),将 getState() 重命名为 getCurrentState(),并将 setState() 重命名为 setCurrentState()
注意:从该库的 1.2 版开始,TileBuilders 类中有 getState() 和 setState() 方法,您可以放心使用这些方法。这些方法与 RequestBuilders.getState() 和 RequestBuilders.setState() 方法不同。

预期用途

您可以使用 Wear OS 提供的功能块来显示少量关键信息,让用户可以在扫一眼功能块的几秒钟内,看完这些信息。如需为用户提供这种优质体验,请遵循以下最佳实践:

不要在功能块上放置过多内容。改为允许用户通过点按功能块在应用的另一个 surface 上了解详情并执行操作。
专注于功能块的布局和内容。系统会负责处理低阶渲染任务。
请勿频繁提取内容,也不要在功能块中启动长时间运行的异步工作。这些工作流会消耗过多系统资源。
目前没有任何推荐文档页面。

请尝试登录您的 Google 账号。

本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。

最后更新时间 (UTC):2023-08-29。

猜你喜欢

转载自blog.csdn.net/hnjzfwy/article/details/134902087
今日推荐