跳过主要内容
返回插件
@capgo/capacitor-watch
教程
@capgo/capacitor-watch

手表

iPhone与watchOS应用之间的双向消息传递

指南

手册:__CAPGO_KEEP_0__

在设备上测试

下载 Capgo 应用程序,然后扫描二维码 code。

Apple Watch 插件预览二维码 code

使用 @capgo/capacitor-watch

Apple Watch 通信插件 Capacitor。该插件提供 iPhone 和 Apple Watch 之间的双向消息传递,使用 WatchConnectivity。

安装

bun add @capgo/capacitor-watch
bunx cap sync

此插件暴露的内容

  • sendMessage - 向 Apple Watch 发送交互式消息。该 Apple Watch 必须可达,否则此操作将失败。使用此功能进行紧急、交互式通信。
  • updateApplicationContext - 更新与 Apple Watch 共享的应用程序上下文。仅保留最新的上下文 - 这将覆盖任何以前的上下文。使用此功能同步 Apple Watch 需要显示的应用程序状态。
  • transferUserInfo - 将用户信息传输到 Apple Watch。传输队列并按顺序传递,即使 Apple Watch 不可用。使用此功能传输重要数据,必须可靠地传递。
  • replyToMessage - 回复来自 Apple Watch 的消息,该消息要求回复。使用此功能回复 messageReceivedWithReply 事件的消息。

示例用途

sendMessage

向手表发送一个交互式消息。手表必须可达才能成功。使用此功能进行紧急、交互式的通信。

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

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

updateApplicationContext

更新与手表共享的应用程序上下文。仅保留最新的上下文 - 这将覆盖任何以前的上下文。使用此功能来同步应用程序状态,以便手表可以显示。

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

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

transferUserInfo

将用户信息传输到手表。传输将排队并按顺序传递,即使手表当前不可达。使用此功能传输必须可靠传递的重要数据。

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

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

replyToMessage

回复手表发送的消息,要求回复。使用此功能回复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 }
  });
});

全局参考

继续使用@capgo/capacitor-watch

如果您正在使用 使用@capgo/capacitor-watch 为native插件工作做出计划,连接它 @capgo/capacitor-watch 了解@capgo/capacitor-watch的实现细节 开始 了解开始的实现细节 Capgo 插件目录 了解Capgo 插件目录中的产品工作流程 Capacitor 由Capgo提供的插件 了解Capacitor 由Capgo提供的插件的实现细节,并 添加或更新插件 了解添加或更新插件的实现细节。