Expressions dynamiques dans Wear OS

Wear OS prend en charge les mises à jour dynamiques des informations qui s'affichent dans vos cartes et vos complications.

À l'aide d'expressions dynamiques, vous pouvez lier à une source de données particulière les données qui apparaissent sur une surface de votre application, comme une carte ou une complication. Les données de fréquence cardiaque que la plate-forme peut lire sont un bon exemple de source de données. Une fois cette liaison établie, le système met automatiquement à jour les données de vos cartes et complications.

Créer des liaisons de données dynamiques

Pour créer une liaison de données dynamique, définissez une variable qui utilise un type de données dynamiques. Associez cette variable au flux de données que vous souhaitez utiliser.

Par exemple, vous pouvez extraire des valeurs liées à l'horloge système et aux informations sur la santé, comme illustré dans l'extrait de code suivant.

Kotlin

val systemTime = DynamicInstant.platformTimeWithSecondsPrecision()
val steps: DynamicInt32 = PlatformHealthSources.dailySteps()

Java

DynamicInstant systemTime = DynamicInstant.platformTimeWithSecondsPrecision();
DynamicInt32 steps = PlatformHealthSources.dailySteps();

Vous pouvez également créer des valeurs dynamiques à partir d'expressions constantes et effectuer des opérations arithmétiques sur n'importe quelle valeur dynamique, comme illustré dans l'extrait de code suivant :

Kotlin

val dynamicValue = DynamicInt32.constant(1).plus(2)

Java

DynamicInt32 dynamicValue = DynamicInt32.constant(1).plus(2)

Liste des types de données dynamiques possibles

Wear OS est compatible avec les types de données dynamiques suivants :

En outre, vous pouvez transformer le type de données à l'aide de fonctionnalités intégrées, telles que les suivantes :

  • DynamicInt32 prend en charge la conversion en DynamicString à l'aide de format().
  • DynamicDuration vous permet d'extraire des parties spécifiques, telles que les secondes d'une durée, en tant qu'objets DynamicInt32.

Utiliser un nombre limité d'expressions dynamiques sur chaque écran

Le système limite le nombre d'expressions dynamiques qu'il peut traiter simultanément sur un écran particulier. Le système convertit les éventuelles expressions dynamiques supplémentaires en valeurs statiques.

Wear OS considère également les expressions constantes comme des expressions dynamiques. Par exemple, l'extrait de code suivant contient quatre expressions dynamiques :

  1. L'opération plus()
  2. L'opération animate()
  3. L'expression constant(1)
  4. L'expression constant(2), suggérée par la valeur 2 dans l'expression dynamique plus()
DynamicInt32.constant(1).plus(2).animate()