시작하기
이 플러그인의 설치 단계와 전체 마크다운 가이드가 포함된 설정 프롬프트를 복사하세요.
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.
AI-Assisted Setup으로 플러그인을 설치할 수 있습니다. 다음 명령어로 AI 도구에 Capgo 스킬을 추가하세요:
bunx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins그런 다음 아래 프롬프트를 사용하세요:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-uwb` plugin in my project.수동 설정을 선호한다면, 다음 명령어를 실행하여 플러그인을 설치하고 아래의 플랫폼별 지침을 따르세요:
bun add @capgo/capacitor-uwbbunx cap sync가져오기
“Import” 섹션import { CapacitorUwb } from '@capgo/capacitor-uwb';빠른 시작
“빠른 시작” 섹션import { CapacitorUwb } from '@capgo/capacitor-uwb';
const result = await CapacitorUwb.isAvailable();console.log(result);예제: getDiscoveryToken
“예제: getDiscoveryToken” 섹션import { CapacitorUwb } from '@capgo/capacitor-uwb';
const result = await CapacitorUwb.getDiscoveryToken();// The result holds sensitive values: use it without logging it.예제: startPeerSession
“예제: startPeerSession” 섹션import { CapacitorUwb } from '@capgo/capacitor-uwb';
await CapacitorUwb.startPeerSession({ peerDiscoveryToken: 'peer-discovery-token-123' });자주 하는 실수
“흔한 실수” 섹션- 리스너: 화면이 언마운트될 때 핸들을 제거합니다.
- 네이티브 동기화: 실행
bunx cap sync플러그인 업그레이드 후. - 신뢰할 수 있는 소스: 신뢰
src/definitions.tsGitHub 레포지토리에서.
지원 여부 확인
“지원 여부 확인” 섹션const availability = await CapacitorUwb.isAvailable();
if (!availability.supported) { console.log('This device does not support UWB.');}iOS Peer Session
“iOS Peer Session” 섹션- 호출하세요
getDiscoveryToken()두 기기 모두에서. - 반환된 base64 토큰을 별도의 채널로 교환하세요.
- 피어 토큰으로 거리 측정을 시작하세요.
const { discoveryToken } = await CapacitorUwb.getDiscoveryToken();
await CapacitorUwb.startPeerSession({ peerDiscoveryToken: '<peer-token-base64>',});자세한 내용은 iOS 설정 기능 및 권한 요구 사항
Android Controller / Controlee 세션
“Android Controller / Controlee 세션” 섹션- Controller가 호출하고
startControllerSession()반환된 값을 공유합니다.rangingParameters및localAddress. - Controlee는 자체적으로 빌드합니다.
rangingParametersController를 사용하여localAddress로peerAddress. - Controlee가 호출합니다
startControleeSession({ rangingParameters }). - 선택적으로 전달
peerAddressControlee 주소를 알게 되면 Controller로 전달합니다.
const controller = await CapacitorUwb.startControllerSession();
await CapacitorUwb.startControleeSession({ rangingParameters: { ...controller.rangingParameters, peerAddress: controller.localAddress, },});자세한 내용은 Android 설정 하드웨어 및 권한 요구 사항 확인
업데이트 감지
“업데이트 감지” 섹션await CapacitorUwb.addListener('rangingUpdate', (event) => { console.log(event.distanceMeters, event.direction);});
await CapacitorUwb.addListener('sessionStateChanged', (event) => { console.log(event.state, event.reason);});await CapacitorUwb.stopSession();Source of Truth
“Source Of Truth” 섹션이 페이지는 플러그인의 src/definitions.ts. TypeScript 정의를 업데이트하고 실행하세요 bun run docgen plugin repository에서 실행하여 생성된 API 문서를 새로고침합니다.