Passer au contenu principal
Retour aux plugins
@capgo/capacitor-watch
Tutoriel
par github.com/Cap-go

Watch

Communication Apple Watch avec un échange de messages bidirectionnel entre les applications iPhone et watchOS

Guide

Tutoriel sur l'horloge

Utilisation de @capgo/capacitor-watch

Plugin d'horloge Apple pour Capacitor. Propose une communication bidirectionnelle entre iPhone et Apple Watch à l'aide de WatchConnectivity.

Installer

bun add @capgo/capacitor-watch
bunx cap sync

Ce que ce plugin expose

  • sendMessage - Envoyer un message interactif à l'horloge. L'horloge doit être accessible pour que cela réussisse. Utilisez cela pour la communication sensible au temps et interactive.
  • updateApplicationContext - Mettre à jour le contexte de l'application partagé avec l'horloge. Seul le contexte le plus récent est conservé - cela remplace tout contexte précédent. Utilisez cela pour synchroniser l'état de l'application qui doit être affiché sur l'horloge.
  • transferUserInfo - Transférer des informations d'utilisateur vers l'horloge. Les transferts sont en file d'attente et sont livrés dans l'ordre, même si l'horloge n'est pas actuellement accessible. Utilisez cela pour les données importantes qui doivent être livrées de manière fiable.
  • replyToMessage - Répondre à un message du montre qui a demandé une réponse. Utilisez ce dernier en réponse à l'événement messageReceivedWithReply.

Exemple d'utilisation

sendMessage

Envoyer un message interactif au montre. Le montre doit être accessible pour que cela réussisse. Utilisez ce dernier pour des communications interactives à temps réel.

import { CapgoWatch } from '@capgo/capacitor-watch';

await CapgoWatch.sendMessage({
  data: { action: 'refresh', timestamp: Date.now() }
});

updateApplicationContext

Mettre à jour le contexte de l'application partagé avec le montre. Seul le contexte le plus récent est conservé - cela remplace tout contexte précédent. Utilisez ce dernier pour synchroniser l'état de l'application que le montre doit afficher.

import { CapgoWatch } from '@capgo/capacitor-watch';

await CapgoWatch.updateApplicationContext({
  context: { theme: 'dark', lastSync: Date.now() }
});

transferUserInfo

Transférer des informations d'utilisateur au montre. Les transferts sont en file d'attente et sont livrés dans l'ordre, même si le montre n'est pas actuellement accessible. Utilisez ce dernier pour des données importantes qui doivent être livrées de manière fiable.

import { CapgoWatch } from '@capgo/capacitor-watch';

await CapgoWatch.transferUserInfo({
  userInfo: { recordId: '123', action: 'created' }
});

replyToMessage

Répondre à un message du montre qui a demandé une réponse. Utilisez ce dernier en réponse à l'événement messageReceivedWithReply.

import { CapgoWatch } from '@capgo/capacitor-watch';

CapgoWatch.addListener('messageReceivedWithReply', async (event) => {
  const result = await processRequest(event.message);
  await CapgoWatch.replyToMessage({
    callbackId: event.callbackId,
    data: { result }
  });
});

Référence complète