본문 바로가기

시작하기

GitHub

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-uwb
bunx cap sync
import { CapacitorUwb } from '@capgo/capacitor-uwb';
import { CapacitorUwb } from '@capgo/capacitor-uwb';
const result = await CapacitorUwb.isAvailable();
console.log(result);
import { CapacitorUwb } from '@capgo/capacitor-uwb';
const result = await CapacitorUwb.getDiscoveryToken();
// The result holds sensitive values: use it without logging it.
import { CapacitorUwb } from '@capgo/capacitor-uwb';
await CapacitorUwb.startPeerSession({ peerDiscoveryToken: 'peer-discovery-token-123' });

자주 하는 실수

“흔한 실수” 섹션
  • 리스너: 화면이 언마운트될 때 핸들을 제거합니다.
  • 네이티브 동기화: 실행 bunx cap sync 플러그인 업그레이드 후.
  • 신뢰할 수 있는 소스: 신뢰 src/definitions.ts GitHub 레포지토리에서.
const availability = await CapacitorUwb.isAvailable();
if (!availability.supported) {
console.log('This device does not support UWB.');
}
  1. 호출하세요 getDiscoveryToken() 두 기기 모두에서.
  2. 반환된 base64 토큰을 별도의 채널로 교환하세요.
  3. 피어 토큰으로 거리 측정을 시작하세요.
const { discoveryToken } = await CapacitorUwb.getDiscoveryToken();
await CapacitorUwb.startPeerSession({
peerDiscoveryToken: '<peer-token-base64>',
});

자세한 내용은 iOS 설정 기능 및 권한 요구 사항

Android Controller / Controlee 세션

“Android Controller / Controlee 세션” 섹션
  1. Controller가 호출하고 startControllerSession() 반환된 값을 공유합니다. rangingParameters 및 localAddress.
  2. Controlee는 자체적으로 빌드합니다. rangingParametersController를 사용하여 localAddress 로 peerAddress.
  3. Controlee가 호출합니다 startControleeSession({ rangingParameters }).
  4. 선택적으로 전달 peerAddress Controlee 주소를 알게 되면 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();

이 페이지는 플러그인의 src/definitions.ts. TypeScript 정의를 업데이트하고 실행하세요 bun run docgen plugin repository에서 실행하여 생성된 API 문서를 새로고침합니다.