Inicio
Copia una línea de comando con los pasos de instalación y la guía de markdown completa para este plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-compass`
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/compass/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.
Instalar
Sección titulada “Instalar”bun add @capgo/capacitor-compassbunx cap syncImportar
Sección titulada “Importar”import { CapgoCompass } from '@capgo/capacitor-compass';API Resumen
Sección titulada “API Resumen”getCurrentHeading
Sección titulada “getCurrentHeading”Obtén la dirección actual del compás en grados. En iOS, la dirección se actualiza en segundo plano y se devuelve el valor más reciente. En Android, la dirección se calcula cuando se llama al método utilizando sensores de acelerómetro y magnetómetro. No implementado en Web.
import { CapgoCompass } from '@capgo/capacitor-compass';
const { value } = await CapgoCompass.getCurrentHeading();console.log('Compass heading:', value, 'degrees');startListening
Sección titulada “startListening”Comienza a escuchar cambios en la dirección del compás mediante eventos. Esto inicia los sensores del compás y emite eventos ‘headingChange’.
import { CapgoCompass } from '@capgo/capacitor-compass';
// With default throttling (100ms interval, 2° minimum change)await CapgoCompass.startListening();
// With custom throttling for high-frequency updatesawait CapgoCompass.startListening({ minInterval: 50, // 50ms between events minHeadingChange: 1.0 // 1° minimum change});
CapgoCompass.addListener('headingChange', (event) => { console.log('Heading:', event.value);});stopListening
Sección titulada “stopListening”Detener la escucha de cambios en la dirección del compás. Esto detiene los sensores del compás y detiene la emisión de eventos.
import { CapgoCompass } from '@capgo/capacitor-compass';
await CapgoCompass.stopListening();checkPermissions
Sección titulada “checkPermissions”Verificar el estado de permiso actual para acceder a datos del compás. En iOS, esto verifica el estado de permiso de ubicación. En Android, esto siempre devuelve ‘concedido’ ya que no se requieren permisos.
import { CapgoCompass } from '@capgo/capacitor-compass';
const status = await CapgoCompass.checkPermissions();console.log('Compass permission:', status.compass);requestPermissions
Sección titulada “requestPermissions”Solicitar permiso para acceder a datos del compás. En iOS, esto solicita permiso de ubicación (requerido para datos de dirección). En Android, esto resuelve inmediatamente ya que no se requieren permisos.
import { CapgoCompass } from '@capgo/capacitor-compass';
const status = await CapgoCompass.requestPermissions();if (status.compass === 'granted') { // Can now use compass}watchAccuracy
Sección titulada “watchAccuracy”Comenzar a monitorear la precisión del compás. En Android, esto monitorea la precisión del magnetómetro y emite eventos de cambio de precisión. Los desarrolladores pueden escuchar estos eventos y implementar su propia interfaz de usuario para solicitudes de calibración. En iOS y Web, este método no hace nada ya que la monitoreo de precisión del compás no está disponible.
import { CapgoCompass } from '@capgo/capacitor-compass';
// Start monitoring accuracyawait CapgoCompass.watchAccuracy();
// Listen for accuracy changes and implement custom UICapgoCompass.addListener('accuracyChange', (event) => { console.log('Accuracy changed to:', event.accuracy); if (event.accuracy < CompassAccuracy.MEDIUM) { // Show your custom calibration UI }});unwatchAccuracy
Sección titulada “unwatchAccuracy”Detener la monitorización de la precisión del compás.
import { CapgoCompass } from '@capgo/capacitor-compass';
await CapgoCompass.unwatchAccuracy();getAccuracy
Sección titulada “getAccuracy”Obtener el nivel actual de precisión del compás.
import { CapgoCompass } from '@capgo/capacitor-compass';
const { accuracy } = await CapgoCompass.getAccuracy();if (accuracy < CompassAccuracy.MEDIUM) { console.log('Compass needs calibration');}En iOS y Web, siempre devuelve CompassAccuracy.UNKNOWN ya que la monitorización de precisión no está disponible.
Copiar a portapapelesCompassHeading
Referencia de tiposSección titulada “Referencia de tipos”
export interface CompassHeading { /** Compass heading in degrees (0-360) */ value: number;}ListeningOptions
Resultado que contiene el valor del encabezado del compás.Opciones para configurar el comportamiento de escucha de compás.
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;}HeadingChangeEvent
Sección titulada “HeadingChangeEvent”Datos de evento para cambios en la dirección del compás.
export interface HeadingChangeEvent { /** Compass heading in degrees (0-360) */ value: number;}AccuracyChangeEvent
Sección titulada “AccuracyChangeEvent”Datos de evento para cambios en la precisión del compás.
export interface AccuracyChangeEvent { /** Current accuracy level of the compass */ accuracy: CompassAccuracy;}PermissionStatus
Sección titulada “PermissionStatus”Estado de permiso para el plugin de compás.
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;}CompassAccuracy
Sección titulada “CompassAccuracy”Niveles de precisión de la brújula constantes.
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,}PermissionState
Sección titulada “Estado de permiso”Estado de permiso para acceso a la brújula.
export type PermissionState = 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';Fuente de Verdad
Sección titulada “Fuente de Verdad”Esta página se genera desde el plugin’s src/definitions.tsRe-ruta la sincronización cuando el público API cambia en la fuente.
Sigue adelante desde Inicio
Sección titulada “Sigue adelante desde Inicio”Si estás utilizando Inicio para planificar la consola y API operaciones, conecte con Usando @capgo/capacitor-compass para la capacidad nativa en Usando @capgo/capacitor-compass, API Resumen para el detalle de implementación en API Resumen, Introducción para el detalle de implementación en Introducción, API Claves para el detalle de implementación en API Claves, y Dispositivos para el detalle de implementación en Dispositivos.