Tip:
Highlight text to annotate it
X
les watchfaces personnalisées ont été
une des caractéristiques les plus attendues
pour Android Wear.
Avec la dernière version, le développement de watchface
est maintenant officiellement supporté.
Je suis Hoi Lam de Google,
et ceci est une introduction au développement des watchfaces.
Votre Watch Face est un service qui fonctionne en arrière-plan.
Je vais vous guider à travers les trois étapes simples
pour créer la vôtre.
D'abord, je vais vous montrer comment créer votre projet watchface.
Deuxièmement comment personnaliser
pour le mode interactif et le mode ambient.
Enfin des API supplémentaires
pour vous aider à créer votre watchface, lisibles dans toutes les conditions.
Alors, comment commencer ?
Le plus simple est d'ouvrir l'un des exemples de watchface
dans ce répertoire.
Il y a une watchface numérique et une watchface analogique
pour vous aider à démarrer.
Dans le projet, vous allez voir deux méthodes clés
qui ont un impact sur l'installation et la boucle de rendu.
Dans onCreate, nous initions des variables d'instance,
qui comprennent le chargement des objets bitmap
ou l'initiation d'objet de dessin
pour le dessin sur le cadran de la montre ou sur le canevas.
Dans onDraw, on rend chacune des frames
que nous affichons sur la watch face.
Comme nous dessinons sur un canevas, nous pouvons utiliser la norme bitmap
ou les fonctionnalités de dessin de forme.
Il est important de garder à l'esprit les performances,
puisque ce code fonctionne sur chaque image.
Après avoir créé le projet,
vous êtes maintenant prêt à personnaliser la watchface
pour les deux principaux modes: interactive et ambient.
En mode interactif, la watchface est souvent
tout en couleur avec une animation fluide.
Ceci, généralement lorsque l'utilisateur accorde une attention à sa montre.
En mode ambient, les graphismes doivent utiliser une palette de couleur limitée
et il est mis à jour seulement une fois par minute.
Alors, quelles sont les principales options de personnalisation
qui sont disponibles dans ces deux modes ?
En mode interactif,
le modèle par défaut est mis à jour une fois par seconde.
Si vous avez besoin de mettre à jour plus fréquemment
parce que vous voulez jouer une animation,
vous aurez besoin de faire trois choses.
Premièrement, vous devez supprimer mUpdateTimeHandler.
Sinon, la méthode onDraw sera appelée seulement une fois par seconde.
Deuxièmement, vous devez déclencher la méthode onDraw la première fois
que le cadran de la watchface est visible.
Ceci est fait en annulant la frame sous la méthode OnVisibilityChange.
Enfin, vous aurez besoin d'annuler la frame
à la fin de la méthode onDraw.
Cela déclenchera la boucle onDraw,
qui permet une animation fluide.
Maintenant, votre watchface sera mis à jour en continu.
Il est important que vous vérifiez si la watchface est
en mode ambient avant d'annuler la frame.
Sinon, la boucle de mise à jour fonctionnera continuellement
en arrière-plan, même si c'est en mode ambient.
Et cela va considérablement influencer la durée de vie de la batterie.
Après le mode interactif,
c'est maintenant le moment de parler du mode ambient.
Les deux actions communes des développeurs en mode ambient sont
1 choisir des graphiques dans le niveau de gris ou noir
et blanc, deux, retirer les éléments de l'écran
qui sont mis à jour plus d'une fois par minute, comme la main de montre
ou les chiffres affichant les secondes.
Pour savoir si la montre est en mode ambient,
vous pouvez surcharger la méthode onAmbientModeChange.
Les développeurs, généralement, envoient la variable d'instance
indiquant si la montre est en mode ambient
et annulant la frame courante.
Cela déclenchera redraw.
Puis, au prochain onDraw,
le développeur peux décider de ce qu'il veut faire.
Avec les personnalisations de base,
C'est maintenant le moment pour un peu de perfectionnement.
En plus du mode ambient,
l'API Watch Face permet aux développeurs un contexte supplémentaire
pour s'assurer que la watch face est lisible dans toutes les conditions.
Je voudrais souligner deux d'entre eux.
Premièrement, certains appareils Android Wear supportent le mode ambient bit réduit
Donc, les pixels de l'écran peuvent être seulement activés ou désactivés.
Réutiliser un design de niveaux de gris
ne marche pas sur ces écrans.
Par exemple, si nous ne faisons rien sur le design de niveaux de gris
que nous avons pour Santa Tracker,
il va ressembler à ceci en bit réduit.
Comme vous pouvez le voir, c'est pas très joli.
Voilà pourquoi nous avons cette solution de rechange de design noir et blanc.
Pour déterminer si le dispositif supporte le bit réduit,
surchargez la méthode onPropertiesChange.
Et les développeurs pourront lire
si la montre supporte prend en charge le mode ambient bit réduit.
Deuxièmement, et c'est mon favori,
la capacité de savoir s'il y a une carte peek sur l'écran.
Cela vous permet de vous assurer qu'il n'interagit pas mal
avec le design de votre watchface.
Il est particulièrement important dans le mode ambient.
Sans cela, comme vous pouvez le voir sur la gauche
les marques épaisses interfèrent avec la carte peek,
posant des problèmes de lecture.
Dans notre design final, nous dessinons un rectangle noir
sans bordure derrière la carte peek pour le rendre plus lisible.
En plus de cela, en utilisant la classe de style de watch face,
les développeurs peuvent spécifier si oui ou non
une carte peek est représentée en mode ambient,
et si elle est transparente ou opaque en mode interactif.
S'il vous plaît consultez la documentation
pour beaucoup plus de fonctionnalités,
par exemple comment garder l'onglet de changement de fuseau horaire,
l'affichage en direct des données sur les watchfaces
et les modifications des paramètres de la watchface sur l'appareil mobile.
Je suis Hoi Lam, et j'ai hâte de lire l'heure sur votre watchface.