Nouveautés sur les produits

Androidify arrive sur Wear OS avec Watch Face Push

3 minutes de lecture
Garan Jenkin
Ingénieur en relations avec les développeurs

 

 

Il y a quelques mois, nous avons relancé Androidify en tant qu'application permettant de générer des robots Android personnalisés. Androidify transforme votre selfie en un robot Android ludique à l'aide de Gemini et d'Imagen.

Cependant, étant donné qu'Android est disponible sur plusieurs facteurs de forme, y compris notre ajout le plus récent, XR, nous nous sommes demandé comment apporter le côté ludique d'Androidify à Wear OS.

Un cadran Androidify

Les robots Androidify étant hautement personnalisés, le cadran est l'endroit idéal pour les présenter. Il s'agit non seulement de la surface la plus visible, mais aussi de la plus personnelle, car elle vous permet de vous représenter.

demonstration.gif

Cadran Androidify personnalisé, généré à partir d'une image selfie

Androidify peut désormais générer un cadran de manière dynamique dans l'application pour téléphone, puis l'envoyer à votre montre, où il sera automatiquement défini comme cadran. Tout cela se fait en quelques secondes.

Conception de haut niveau

image.png

Flux de bout en bout pour la création et l'installation de cadrans

Pour obtenir une expérience de bout en bout, plusieurs technologies doivent être combinées, comme illustré dans ce schéma de conception de haut niveau.

Tout d'abord, l'avatar de l'utilisateur est combiné à un modèle de Watch Face Format préexistant, qui est ensuite empaqueté dans un APK. Il est validé (pour des raisons qui seront expliquées) et envoyé à la montre.

Une fois reçu par la montre, le nouveau Watch Face Push API (qui fait partie de Wear OS 6) est utilisé pour installer et activer le cadran.

Examinons les détails :

Créer les modèles de cadran

Le cadran est créé à partir d'un modèle, lui-même conçu dans Watch Face Designer.Il s'agit de notre nouveau plug-in Figma qui vous permet de créer des cadrans au format Watch Face directement dans Figma.

image.png

Modèle de cadran Androidify dans Watch Face Designer

Le plug-in permet d'exporter le cadran de différentes manières, y compris en tant que ressources Watch Face Format (WFF). Elles peuvent ensuite être facilement intégrées en tant qu'éléments dans l'application Androidify, pour créer dynamiquement le cadran final.

Packaging et validation

Une fois le modèle et l'avatar combinés, le kit de compilation d'éléments portables (Pack) est utilisé pour assembler un APK.

Dans Androidify, Pack est utilisé comme une bibliothèque native sur le téléphone.Pour en savoir plus sur l'interface entre Androidify et la bibliothèque Pack, consultez le dépôt GitHub.

Avant la transmission, l'APK est vérifié par le validateur Watch Face Push.

Ce validateur vérifie que l'APK est adapté à l'installation. Cela inclut la vérification du contenu de l'APK pour s'assurer qu'il s'agit d'un cadran valide, ainsi que certains contrôles de performances. S'il est valide, le validateur génère un jeton.

Ce jeton est requis par la montre pour l'installation.

Envoyer le cadran

L'application Androidify sur Wear OS utilise WearableListenerService pour écouter les événements sur la Wearable Data Layer.

L'application pour téléphone transfère le cadran en combinant MessageClient pour configurer le processus, puis ChannelClient pour diffuser l'APK.

Installer le cadran sur la montre

Une fois le cadran reçu sur l'appareil Wear OS, l'application Androidify utilise la nouvelle API Watch Face Push pour l'installer :

val wfpManager = 

    WatchFacePushManagerFactory.createWatchFacePushManager(context)

val response = wfpManager.listWatchFaces()



try {

    if (response.remainingSlotCount > 0) {

        wfpManager.addWatchFace(apkFd, token)

    } else {

        val slotId = response.installedWatchFaceDetails.first().slotId

        wfpManager.updateWatchFace(slotId, apkFd, token)

    }

} catch (a: WatchFacePushManager.AddWatchFaceException) {

    return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR

} catch (u: WatchFacePushManager.UpdateWatchFaceException) {

    return WatchFaceInstallError.WATCH_FACE_INSTALL_ERROR

}

Androidify utilise la méthode addWatchFace ou updateWatchFace, selon le scénario : Watch Face Push définit un concept d'"emplacements", c'est-à-dire le nombre de cadrans qu'une application donnée peut avoir installés à tout moment. Pour Wear OS 6, cette valeur est en fait de 1.

L'approche d'Androidify consiste à installer le cadran s'il y a un emplacement libre. Sinon, tout cadran existant est remplacé par le nouveau.

Définir le cadran actif

L'installation programmatique du cadran est une excellente étape, mais Androidify vise à s'assurer qu'il s'agit également du cadran actif. 

Watch Face Push introduit une nouvelle autorisation d'exécution qui doit être accordée pour que les applications puissent y parvenir :

com.google.wear.permission.SET_PUSHED_WATCH_FACE_AS_ACTIVE

Une fois cette autorisation acquise, la méthode wfpManager.setWatchFaceAsActive() peut être appelée pour définir un cadran installé comme cadran actif.

Toutefois, Androidify doit tenir compte de plusieurs points :

  • setWatchFaceAsActive ne peut être utilisé qu'une seule fois.
  • SET_PUSHED_WATCH_FACE_AS_ACTIVE ne peut pas être demandé à nouveau après avoir été refusé par l'utilisateur.
  • Androidify peut déjà contrôler le cadran actif.

Pour en savoir plus, découvrez comment Androidify implémente la logique de définition de l'activité.

Premiers pas avec Watch Face Push pour Wear OS

Watch Face Push est une API polyvalente, tout aussi adaptée à l'amélioration d'Androidify qu'à la création de places de marché de cadrans complètes.

Vous avez peut-être une application pour téléphone existante et vous cherchez des moyens d'impliquer davantage vos utilisateurs et de les satisfaire.

Ou peut-être êtes-vous un développeur de cadrans existant qui souhaite créer sa propre communauté et sa propre galerie en lançant une application de place de marché.

Consultez ces ressources :

Regardez également la vidéo d'accompagnement pour découvrir plus en détail comment nous avons intégré Androidify à Wear OS.

Nous avons hâte de découvrir ce que vous allez créer avec Watch Face Push.

Écrit par :

Lire la suite