Zum Inhalt springen

Getting Started

GitHub

Sie können unsere AI-gestützte Einrichtung verwenden, um das Plugin zu installieren. Fügen Sie den Capgo-Fähigkeiten Ihrer AI-Werkzeugleiste hinzu, indem Sie den folgenden Befehl ausführen:

Terminal-Fenster
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Verwenden Sie dann den folgenden Prompt:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-compass` plugin in my project.

Wenn Sie die manuelle Einrichtung bevorzugen, installieren Sie das Plugin, indem Sie die folgenden Befehle ausführen und folgen Sie den unten angegebenen Plattform-spezifischen Anweisungen:

Terminal-Fenster
bun add @capgo/capacitor-compass
bunx cap sync
import { CapgoCompass } from '@capgo/capacitor-compass';

Der aktuelle Kompasswinkel in Grad erhalten. Bei iOS wird der Winkel im Hintergrund aktualisiert und der neueste Wert zurückgegeben. Bei Android wird der Winkel, wenn die Methode aufgerufen wird, mithilfe von Beschleunigungssensor und Magnetometer berechnet. Nicht implementiert auf Web.

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

Der Kompass beginnt, den Winkel zu überwachen und sendet Ereignisse mit dem Namen ‘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);
});

Stop auf Kompassänderungen hören. Dies stoppt die Kompasssensor und stoppt Ereignisse aus.

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

Überprüfe den aktuellen Berechtigungsstatus für den Zugriff auf Kompassdaten. Bei iOS überprüft dies die Standortberechtigung. Bei Android gibt es immer ‘erteilt’ zurück, da keine Berechtigungen erforderlich sind.

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

Berechtigung zum Zugriff auf Kompassdaten anfordern. Bei iOS wird die Standortberechtigung angefordert (erforderlich für die Daten des Kompassgeräts). Bei Android wird sofort gelöst, da keine Berechtigungen erforderlich sind.

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

Kompassgenauigkeit überwachen. Bei Android überwacht dies die Magnetometergenauigkeit und sendet Ereignisse für Genauigkeitsänderungen. Entwickler können diese Ereignisse abonnieren und eigene UIs für Anpassungshinweise implementieren. Bei iOS und Web tut dies nichts, da die Überwachung der Kompassgenauigkeit nicht verfügbar ist.

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
}
});

Stop die Kompassgenauigkeit zu überwachen. Dies beendet die Genauigkeitsüberwachung.

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

Ermitteln Sie derzeitige Kompassgenauigkeitsebene. Bei Android gibt es die derzeitige Magnetometer-Sensoren Genauigkeit zurück. Bei iOS und Web gibt es immer CompassAccuracy.UNKNOWN zurück, da die Genauigkeitsüberwachung nicht verfügbar ist.

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

Ergebnis, das den Kompasswert enthält.

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

Einstellungen für die Konfiguration der Kompass-Hörverhalten.

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;
}

Daten für Ereignisse von Änderungen der Kopfzeile.

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

Daten für Ereignisse von Änderungen der Genauigkeit.

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

Zugriffsstatus für den Kompass-Plugin.

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;
}

Konstanten für die Genauigkeitsstufe des Kompasses.

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,
}

Zugriffsstatus für Kompasszugriff.

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

Diese Seite wurde aus dem Plugin generiert. src/definitions.ts. Wenn sich die öffentliche API im Hintergrund ändert, führen Sie die Synchronisation erneut durch.

Wenn Sie Getting Started Um das Dashboard und die API-Operationen zu planen, verbinden Sie es mit Mit @capgo/capacitor-compass für die native Fähigkeit in Mit @capgo/capacitor-compass API Übersicht für die Implementierungsdetails in API Übersicht Einführung für die Implementierungsdetails in Einführung API Schlüssel für die Implementierungsdetails in API Schlüssel und Geräte für die Implementierungsdetails in Geräte.