Saltar al contenido

Primeros pasos

GitHub

Puedes usar nuestro setup asistido por IA para instalar el plugin. Añade las skills de Capgo a tu herramienta de IA con el siguiente comando:

Ventana de terminal
bunx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Luego usa el siguiente prompt:

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

Si prefieres la configuración manual, instala el plugin ejecutando estos comandos y sigue las instrucciones de cada plataforma:

Ventana de terminal
bun add @capgo/capacitor-light-sensor
bunx cap sync
import { LightSensor } from '@capgo/capacitor-light-sensor';
import { LightSensor } from '@capgo/capacitor-light-sensor';
const { available } = await LightSensor.isAvailable();
import { LightSensor } from '@capgo/capacitor-light-sensor';
await LightSensor.start({ updateInterval: 500 });
import { LightSensor } from '@capgo/capacitor-light-sensor';
await LightSensor.stop();
  • Permisos: llama a checkPermissions() luego requestPermissions() cuando sea necesario.
  • Listeners: elimina los handles cuando se desmonten las pantallas.
  • Fuente de verdad: confianza src/definitions.ts en el repo de GitHub.

Comprueba si el sensor de luz está disponible en el dispositivo actual. Siempre debes verificar la disponibilidad del sensor antes de intentar usarlo.

import { LightSensor } from '@capgo/capacitor-light-sensor';
const { available } = await LightSensor.isAvailable();

Empieza a escuchar las actualizaciones del sensor de luz. Esto iniciará las mediciones del sensor en el intervalo especificado. Usa addListener para recibir los datos del sensor.

import { LightSensor } from '@capgo/capacitor-light-sensor';
await LightSensor.start({ updateInterval: 500 });

Deja de escuchar las actualizaciones del sensor de luz. Esto detendrá el sensor y ahorrará batería.

import { LightSensor } from '@capgo/capacitor-light-sensor';
await LightSensor.stop();

Consulta el estado de permisos para sensores de alta frecuencia de muestreo. En Android 12+, se requiere el permiso HIGH_SAMPLING_RATE_SENSORS para intervalos de actualización inferiores a 200ms.

import { LightSensor } from '@capgo/capacitor-light-sensor';
const status = await LightSensor.checkPermissions();

Solicita permiso para sensores con alta frecuencia de muestreo. En Android 12+, esto solicita el permiso HIGH_SAMPLING_RATE_SENSORS.

import { LightSensor } from '@capgo/capacitor-light-sensor';
const status = await LightSensor.requestPermissions();

Resultado que indica si el sensor está disponible.

export interface IsAvailableResult {
/**
* Whether the light sensor is available on this device.
* Always false on iOS as the light sensor API is not available.
*
* @since 0.0.1
*/
available: boolean;
}

Opciones para iniciar el listener del sensor de luz.

export interface StartOptions {
/**
* The desired interval between sensor updates in milliseconds.
* On Android 12+, there's a minimum interval of 200ms unless the app
* has the HIGH_SAMPLING_RATE_SENSORS permission.
*
* @default 200
* @since 0.0.1
*/
updateInterval?: number;
}

Función callback para las actualizaciones del sensor de luz.

export type LightSensorCallback = (measurement: LightSensorMeasurement) => void;

Resultado de una solicitud o comprobación de permisos.

export interface PermissionStatus {
/**
* Whether the high sampling rate sensor permission is granted.
* On Android 12+, this permission is required for update intervals below 200ms.
*
* @since 0.0.1
*/
highSamplingRate: 'prompt' | 'prompt-with-rationale' | 'granted' | 'denied';
}

Información de la versión del plugin.

export interface VersionResult {
/**
* The current version of the plugin.
*
* @since 0.0.1
*/
version: string;
}

Una única medición del sensor de luz.

export interface LightSensorMeasurement {
/**
* Ambient light level in lux (lx).
*
* @since 0.0.1
*/
illuminance: number;
/**
* Timestamp of the measurement in seconds since epoch.
*
* @since 0.0.1
*/
timestamp: number;
}

Esta página se genera a partir del plugin src/definitions.ts. Vuelve a ejecutar el sync cuando el API público cambie en upstream.

Si estás usando Primeros pasos para planificar las operaciones del dashboard y de API, conéctalo con Uso de @capgo/capacitor-light-sensor para la funcionalidad nativa en Uso de @capgo/capacitor-light-sensor, Resumen de API para los detalles de implementación en API Overview, Introducción para los detalles de implementación en la Introducción, Claves de API para los detalles de implementación en las claves de API, y Dispositivos para el detalle de implementación en Devices.