Erste Schritte
Kopiere einen Setup-Prompt mit den Installationsschritten und dem vollständigen Markdown-Guide für dieses Plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-light-sensor`
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/light-sensor/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.
Installieren
Abschnitt „Installation“Du kannst unser KI-gestütztes Setup nutzen, um das Plugin zu installieren. Füge die Capgo Skills mit dem folgenden Befehl deinem KI-Tool hinzu:
bunx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsNutze dann diesen Prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-light-sensor` plugin in my project.Wenn du ein manuelles Setup bevorzugst, installiere das Plugin mit den folgenden Befehlen und befolge die plattformspezifischen Anweisungen unten:
bun add @capgo/capacitor-light-sensorbunx cap syncImportieren
Abschnitt mit dem Titel „Import“import { LightSensor } from '@capgo/capacitor-light-sensor';Quickstart
Abschnitt „Quick start“import { LightSensor } from '@capgo/capacitor-light-sensor';
const { available } = await LightSensor.isAvailable();Beispiel: start
Abschnitt mit dem Titel „Beispiel: starten“import { LightSensor } from '@capgo/capacitor-light-sensor';
await LightSensor.start({ updateInterval: 500 });Beispiel: stop
Abschnitt mit dem Titel „Beispiel: stoppen“import { LightSensor } from '@capgo/capacitor-light-sensor';
await LightSensor.stop();Häufige Stolperfallen
Abschnitt „Häufige Fallstricke“- Berechtigungen: aufrufen
checkPermissions()dannrequestPermissions()bei Bedarf. - Listener: Handles beim Unmounten von Screens entfernen.
- Single Source of Truth: Vertrauen
src/definitions.tsim GitHub Repo.
API Übersicht
Abschnitt „API Übersicht“isAvailable
Abschnitt mit dem Titel „isAvailable“Prüfen Sie, ob der Lichtsensor auf dem aktuellen Gerät verfügbar ist. Sie sollten die Verfügbarkeit des Sensors immer prüfen, bevor Sie versuchen, ihn zu verwenden.
import { LightSensor } from '@capgo/capacitor-light-sensor';
const { available } = await LightSensor.isAvailable();start
Abschnitt „Start“Beginne mit dem Abhören von Lichtsensor-Updates.\nDamit werden Sensor-Messungen in dem angegebenen Intervall gestartet.\nNutze addListener um die Sensordaten zu empfangen.
import { LightSensor } from '@capgo/capacitor-light-sensor';
await LightSensor.start({ updateInterval: 500 });Beende das Empfangen von Lichtsensor-Updates. Dadurch wird der Sensor gestoppt und der Akku geschont.
import { LightSensor } from '@capgo/capacitor-light-sensor';
await LightSensor.stop();checkPermissions
Abschnitt „checkPermissions“Prüfe den aktuellen Permission-Status für Sensoren mit hoher Sampling-Rate. Ab Android 12+ ist die Permission HIGH_SAMPLING_RATE_SENSORS erforderlich, wenn die Sensor-Update-Intervalle unter 200ms liegen.
import { LightSensor } from '@capgo/capacitor-light-sensor';
const status = await LightSensor.checkPermissions();requestPermissions
Abschnitt „requestPermissions“Berechtigung für Sensoren mit hoher Abtastrate anfordern. Auf Android 12+ wird dafür die HIGH_SAMPLING_RATE_SENSORS-Berechtigung angefordert.
import { LightSensor } from '@capgo/capacitor-light-sensor';
const status = await LightSensor.requestPermissions();Typreferenz
Abschnitt mit dem Titel „Typreferenz“IsAvailableResult
Abschnitt mit dem Titel „IsAvailableResult“Ergebnis, das angibt, ob der Sensor verfügbar ist.
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;}StartOptions
Abschnitt mit dem Titel „StartOptions“Optionen zum Starten des Light-Sensor-Listeners.
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;}LightSensorCallback
Abschnitt mit dem Titel „LightSensorCallback“Callback-Funktion für Light-Sensor-Updates.
export type LightSensorCallback = (measurement: LightSensorMeasurement) => void;PermissionStatus
Abschnitt „PermissionStatus“Ergebnis einer Berechtigungsanfrage oder -prüfung.
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';}VersionResult
Abschnitt mit dem Titel „VersionResult“Versionsinformationen des Plugins.
export interface VersionResult { /** * The current version of the plugin. * * @since 0.0.1 */ version: string;}LightSensorMeasurement
Abschnitt mit dem Titel „LightSensorMeasurement“Eine einzelne Lichtsensormessung.
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;}Source of Truth
Abschnitt mit dem Titel „Source of Truth“Diese Seite wird aus dem Plugin generiert src/definitions.ts. Führe den Sync erneut aus, wenn sich das öffentliche API upstream ändert.
Weiter geht's nach Getting Started
Abschnitt: „Weiter geht’s mit Getting Started“Wenn du es nutzt Erste Schritte um Dashboard- und API-Operationen zu planen, verbinde es mit @capgo/capacitor-light-sensor verwenden für die native Funktionalität bei der Nutzung von @capgo/capacitor-light-sensor, API Übersicht für Details zur Implementierung im API Overview, Einführung für die Implementierungsdetails in der Einleitung, API Schlüssel für das Implementierungsdetail in API Keys und Geräte für das Implementierungsdetail in Devices.