Zu ProtoLayout-Namespaces migrieren

Ab Version 1.2 befinden sich die meisten Tiles Layout APIs im Namespace androidx.wear.protolayout. Führen Sie die folgenden Migrationsschritte in Ihrem Code aus, um die neuesten APIs zu verwenden.

Abhängigkeiten aktualisieren

Nehmen Sie in der Build-Datei Ihres App-Moduls die folgenden Änderungen vor:

Cool

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

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

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

Kotlin

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

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

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

Namespaces aktualisieren

Nehmen Sie in den Kotlin- und Java-basierten Codedateien Ihrer App die folgenden Aktualisierungen vor. Alternativ können Sie dieses Skript zur Umbenennung von Namespace ausführen.

  1. Ersetzen Sie alle androidx.wear.tiles.material.*-Importe durch androidx.wear.protolayout.material.*. Führe diesen Schritt auch für die androidx.wear.tiles.material.layouts-Mediathek aus.
  2. Ersetzen Sie die meisten anderen androidx.wear.tiles.*-Importe durch androidx.wear.protolayout.*.

    Die Importe für androidx.wear.tiles.EventBuilders, androidx.wear.tiles.RequestBuilders, androidx.wear.tiles.TileBuilders und androidx.wear.tiles.TileService sollten gleich bleiben.

  3. Benennen Sie einige veraltete Methoden der TileService- und TileBuilder-Klassen um:

    1. TileBuilders: von getTimeline() zu getTileTimeline() und setTimeline() zu setTileTimeline()
    2. TileService – alter Preis: onResourcesRequest(), neuer Preis: onTileResourcesRequest()
    3. RequestBuilders.TileRequest: von getDeviceParameters() zu getDeviceConfiguration(), von setDeviceParameters() zu setDeviceConfiguration(), von getState() zu getCurrentState() und von setState() zu setCurrentState()