Panduan Memulai
Salin prompt setup yang berisi langkah install dan panduan markdown lengkap untuk plugin ini.
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.
Anda bisa menggunakan AI-Assisted Setup kami untuk menginstal plugin ini. Tambahkan skill Capgo ke tool AI Anda dengan command berikut:
bunx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLalu gunakan prompt berikut:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-uwb` plugin in my project.Jika Anda lebih memilih Manual Setup, instal plugin dengan menjalankan perintah berikut dan ikuti petunjuk khusus platform di bawah ini:
bun add @capgo/capacitor-uwbbunx cap syncimport { CapacitorUwb } from '@capgo/capacitor-uwb';Mulai cepat
Bagian berjudul “Mulai cepat”import { CapacitorUwb } from '@capgo/capacitor-uwb';
const result = await CapacitorUwb.isAvailable();console.log(result);Contoh: getDiscoveryToken
Bagian berjudul “Example: getDiscoveryToken”import { CapacitorUwb } from '@capgo/capacitor-uwb';
const result = await CapacitorUwb.getDiscoveryToken();// The result holds sensitive values: use it without logging it.Contoh: startPeerSession
Bagian berjudul “Example: startPeerSession”import { CapacitorUwb } from '@capgo/capacitor-uwb';
await CapacitorUwb.startPeerSession({ peerDiscoveryToken: 'peer-discovery-token-123' });Kesalahan umum
Bagian berjudul “Kesalahan umum”- Listeners: hapus handle saat screen unmount.
- Sinkronisasi Native: jalankan
bunx cap syncsetelah upgrade plugin. - Sumber kebenaran tunggal: percayai
src/definitions.tsdi repo GitHub.
Cek Ketersediaan
Bagian berjudul “Cek Ketersediaan”const availability = await CapacitorUwb.isAvailable();
if (!availability.supported) { console.log('This device does not support UWB.');}Sesi Peer iOS
Bagian berjudul “Sesi Peer iOS”- Panggil
getDiscoveryToken()di kedua perangkat. - Tukarkan token base64 yang dikembalikan melalui jalur terpisah.
- Mulai ranging dengan peer token.
const { discoveryToken } = await CapacitorUwb.getDiscoveryToken();
await CapacitorUwb.startPeerSession({ peerDiscoveryToken: '<peer-token-base64>',});Lihat Setup iOS untuk persyaratan kapabilitas dan izin.
Kontroler Android / Sesi Kontrol
Bagian berjudul “Android Controller / Controlee Session”- Controller memanggil
startControllerSession()dan membagikan hasilrangingParametersdanlocalAddress. - Kontrolee membangun miliknya sendiri
rangingParameters, menggunakan controllerlocalAddresssebagaipeerAddress. - Pihak controlee memanggil
startControleeSession({ rangingParameters }). - Opsional, kirimkan
peerAddresske controller setelah alamat controlee diketahui.
const controller = await CapacitorUwb.startControllerSession();
await CapacitorUwb.startControleeSession({ rangingParameters: { ...controller.rangingParameters, peerAddress: controller.localAddress, },});Lihat Setup Android untuk kebutuhan hardware dan izin.
Dengarkan Update
Bagian berjudul “Listen For Updates”await CapacitorUwb.addListener('rangingUpdate', (event) => { console.log(event.distanceMeters, event.direction);});
await CapacitorUwb.addListener('sessionStateChanged', (event) => { console.log(event.state, event.reason);});Stop Session
Bagian berjudul “Stop The Session”await CapacitorUwb.stopSession();Sumber Kebenaran
Bagian berjudul “Sumber Kebenaran”Halaman ini dibuat dari plugin src/definitions.ts. Perbarui definisi TypeScript dan jalankan bun run docgen di repositori plugin untuk menyegarkan dokumentasi API yang dihasilkan.