コンテンツにジャンプ

Getting Started

GitHub

CapgoのAI-Assisted Setupを使用してプラグインをインストールできます。AIツールにCapgoスキルを追加するには、以下のコマンドを実行してください。

ターミナル画面
npx 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-compass` plugin in my project.

Manual Setupを使用する場合は、以下のコマンドを実行してプラグインをインストールし、以下のプラットフォーム固有の指示に従ってください。

ターミナルウィンドウ
bun add @capgo/capacitor-compass
bunx cap sync
import { CapgoCompass } from '@capgo/capacitor-compass';

現在の方位角度を取得します。 iOSでは、背景で更新され、最新の値が返されます。 Androidでは、加速度計と磁気センサを使用してメソッドを呼び出すと、方位角度が計算されます。 Webでは実装されていません。

import { CapgoCompass } from '@capgo/capacitor-compass';
const { value } = await CapgoCompass.getCurrentHeading();
console.log('Compass heading:', value, 'degrees');

方位角度の変更をイベントを介してリスンします。 この機能を開始すると、コンパスセンサが開始され、「headingChange」イベントが発生します。

import { CapgoCompass } from '@capgo/capacitor-compass';
// With default throttling (100ms interval, 2° minimum change)
await CapgoCompass.startListening();
// With custom throttling for high-frequency updates
await CapgoCompass.startListening({
minInterval: 50, // 50ms between events
minHeadingChange: 1.0 // 1° minimum change
});
CapgoCompass.addListener('headingChange', (event) => {
console.log('Heading:', event.value);
});

stopListening

__CAPGO_KEEP_1__

コンパスヘッディングの変更を待つ機能を停止します。 この機能はコンパスセンサを停止し、イベントの発行を停止します。

import { CapgoCompass } from '@capgo/capacitor-compass';
await CapgoCompass.stopListening();

checkPermissions

__CAPGO_KEEP_1__

コンパスデータへのアクセス権の現在の状態を確認します。 iOSでは、位置情報の許可状態を確認します。 Androidでは、このメソッドは常に「許可」状態を返します。なぜなら、許可が必要ないからです。

import { CapgoCompass } from '@capgo/capacitor-compass';
const status = await CapgoCompass.checkPermissions();
console.log('Compass permission:', status.compass);

requestPermissions

__CAPGO_KEEP_1__

コンパスデータへのアクセス許可を要求します。 iOSでは、ヘッディングデータのために位置情報の許可を要求します。 Androidでは、このメソッドはすぐに解決します。なぜなら、許可が必要ないからです。

import { CapgoCompass } from '@capgo/capacitor-compass';
const status = await CapgoCompass.requestPermissions();
if (status.compass === 'granted') {
// Can now use compass
}

watchAccuracy

__CAPGO_KEEP_1__

コンパス精度を監視します。 Androidでは、このメソッドは磁気センサの精度を監視し、精度の変更イベントを発行します。 開発者は、これらのイベントにリスナーを設定し、カリブレーション用のUIを実装できます。 iOSとWebでは、このメソッドは何も実行しません。なぜなら、コンパス精度の監視は利用できないからです。

import { CapgoCompass } from '@capgo/capacitor-compass';
// Start monitoring accuracy
await CapgoCompass.watchAccuracy();
// Listen for accuracy changes and implement custom UI
CapgoCompass.addListener('accuracyChange', (event) => {
console.log('Accuracy changed to:', event.accuracy);
if (event.accuracy < CompassAccuracy.MEDIUM) {
// Show your custom calibration UI
}
});

コンパス精度の監視を停止します。 精度の監視を停止します。

import { CapgoCompass } from '@capgo/capacitor-compass';
await CapgoCompass.unwatchAccuracy();

現在のコンパス精度を取得します。 Androidでは、現在の磁気センサの精度を返します。 iOSとWebでは、精度の監視が利用できないため、常にCompassAccuracy.UNKNOWNを返します。

import { CapgoCompass } from '@capgo/capacitor-compass';
const { accuracy } = await CapgoCompass.getAccuracy();
if (accuracy < CompassAccuracy.MEDIUM) {
console.log('Compass needs calibration');
}

コンパス向きの値を含む結果

export interface CompassHeading {
/** Compass heading in degrees (0-360) */
value: number;
}

コンパスリスニングの設定を構成するためのオプション。

export interface ListeningOptions {
/**
* Minimum interval between heading change events in milliseconds.
* Lower values = more frequent updates but higher CPU/battery usage.
*
* @default 100
* @since 8.1.4
*/
minInterval?: number;
/**
* Minimum heading change in degrees required to trigger an event.
* Lower values = more sensitive but more events.
* Handles wraparound (e.g., 359° to 1° = 2° change).
*
* @default 2.0
* @since 8.1.4
*/
minHeadingChange?: number;
}

クリップボードにコピー

export interface HeadingChangeEvent {
/** Compass heading in degrees (0-360) */
value: number;
}

コンパスプラグインの許可状態

export interface AccuracyChangeEvent {
/** Current accuracy level of the compass */
accuracy: CompassAccuracy;
}

クリップボードにコピー

export interface PermissionStatus {
/**
* Permission state for accessing compass/location data.
* On iOS, this requires location permission to access heading.
* On Android, no special permissions are required for compass sensors.
*
* @since 7.0.0
*/
compass: PermissionState;
}

コンパス精度レベル定数。

export enum CompassAccuracy {
/** High accuracy - approximates to less than 5 degrees of error */
HIGH = 3,
/** Medium accuracy - approximates to less than 10 degrees of error */
MEDIUM = 2,
/** Low accuracy - approximates to less than 15 degrees of error */
LOW = 1,
/** Unreliable accuracy - approximates to more than 15 degrees of error */
UNRELIABLE = 0,
/** Unknown accuracy value */
UNKNOWN = -1,
}

コンパスのアクセス許可状態。

export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';

このページはプラグインの src/definitions.ts API のパブリックアップストリームが変更されたときに再度同期してください。

Capgoを使用している場合 Getting Started ダッシュボードとAPIの操作を計画するには、APIに接続してください Capacitorを使用してcapgo/capacitor-compassを使用する Capacitorを使用してcapgo/capacitor-compassを使用する APIの概要 APIの実装詳細 Capgoの概要 __CAPGO_KEEP_0__の実装詳細 API Keys APIのキー __CAPGO_KEEP_0__の実装詳細 __CAPGO_KEEP_0__の実装詳細についての情報は、デバイスのページにあります。