Getting Started
Kopieren Sie einen Setup-Vorschlag mit den Installationsanweisungen und der vollständigen Markdown-Anleitung für diesen Plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-uwb`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/uwb/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installieren
Abschnitt: InstallierenSie können unsere AI-gestützte Einrichtung verwenden, um das Plugin zu installieren. Fügen Sie die Capgo-Fähigkeiten zu Ihrem AI-Tool hinzu, indem Sie den folgenden Befehl ausführen:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsDann verwenden Sie den folgenden Prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-uwb` plugin in my project.Wenn Sie eine manuelle Einrichtung bevorzugen, installieren Sie das Plugin, indem Sie die folgenden Befehle ausführen und die darunterstehenden plattform-spezifischen Anweisungen befolgen.
bun add @capgo/capacitor-uwbbunx cap syncImportieren
Abschnitt: Importierenimport { CapacitorUwb } from '@capgo/capacitor-uwb';Verfügbarkeit überprüfen
Abschnitt mit dem Titel „Verfügbarkeit überprüfen“const availability = await CapacitorUwb.isAvailable();
if (!availability.supported) { console.log('This device does not support UWB.');}iOS-Peer-Sitzung
Abschnitt mit dem Titel „iOS-Peer-Sitzung“- Anrufen
getDiscoveryToken()auf beiden Geräten. - Austauschen Sie die zurückgegebenen Base64-Tokens außerhalb des Systems.
- Mit dem Peer-Token beginnen, den Bereich zu messen.
const { discoveryToken } = await CapacitorUwb.getDiscoveryToken();
await CapacitorUwb.startPeerSession({ peerDiscoveryToken: '<peer-token-base64>',});Siehe iOS-Einrichtung für die Anforderungen an Fähigkeiten und Berechtigungen.
Android-Controller / Controlee-Sitzung
Abschnitt mit dem Titel “Android-Controller / Controlee-Sitzung”- Der Controller ruft an
startControllerSession()und teilt die zurückgegebenenrangingParametersundlocalAddress. - Der Controlee baut seinen eigenen
rangingParametersmit Hilfe des ControllerslocalAddressalspeerAddress. - Der Controlee ruft an
startControleeSession({ rangingParameters }). - Optional kann man
peerAddresszum Controller, sobald die Adresse des Kontrollierten bekannt ist.
const controller = await CapacitorUwb.startControllerSession();
await CapacitorUwb.startControleeSession({ rangingParameters: { ...controller.rangingParameters, peerAddress: controller.localAddress, },});Siehe Android-Einrichtung für Hardware- und Berechtigungsanforderungen.
Für Updates lauschen
Abschnitt mit dem Titel „Für Updates lauschen“await CapacitorUwb.addListener('rangingUpdate', (event) => { console.log(event.distanceMeters, event.direction);});
await CapacitorUwb.addListener('sessionStateChanged', (event) => { console.log(event.state, event.reason);});Sitzung beenden
Abschnitt mit dem Titel „Sitzung beenden“await CapacitorUwb.stopSession();Quelle der Wahrheit
Abschnitt mit dem Titel “Quelle der Wahrheit”Diese Seite wird aus dem Plugin generiert src/definitions.tsAktualisieren Sie die TypeScript-Definitionen und führen Sie bun run docgen in der Plugin-Repository aktualisieren, um die generierten API Dokumente neu zu laden.