迁移到 ProtoLayout 命名空间

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

更新依赖项

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

Groovy

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

  // Include additional dependencies
  implementation "androidx.wear.protolayout:protolayout:1.3.0-alpha04"
  implementation "androidx.wear.protolayout:protolayout-material:1.3.0-alpha04"
  implementation "androidx.wear.protolayout:protolayout-expression:1.3.0-alpha04"

  // Update
  implementation "androidx.wear.tiles:tiles:1.5.0-alpha04"

Kotlin

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

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

  // Update
  implementation("androidx.wear.tiles:tiles:1.5.0-alpha04")

更新命名空间

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

  1. 将所有 androidx.wear.tiles.material.* 导入替换为 androidx.wear.protolayout.material.*。也需要为 androidx.wear.tiles.material.layouts 库完成此步骤。
  2. 将大多数其他 androidx.wear.tiles.* 导入替换为 androidx.wear.protolayout.*

    针对 androidx.wear.tiles.EventBuildersandroidx.wear.tiles.RequestBuildersandroidx.wear.tiles.TileBuildersandroidx.wear.tiles.TileService 的导入应保持不变。

  3. 重命名 TileService 和 TileBuilder 类中的一些已弃用方法

    1. TileBuilders:将 getTimeline() 重命名为 getTileTimeline(),并将 setTimeline() 重命名为 setTileTimeline()
    2. TileService:将 onResourcesRequest() 重命名为 onTileResourcesRequest()
    3. RequestBuilders.TileRequest:将 getDeviceParameters() 重命名为 getDeviceConfiguration(),将 setDeviceParameters() 重命名为 setDeviceConfiguration(),将 getState() 重命名为 getCurrentState(),并将 setState() 重命名为 setCurrentState()