ambient_light 0.1.3 copy "ambient_light: ^0.1.3" to clipboard
ambient_light: ^0.1.3 copied to clipboard

A powerful plugin to access ambient light sensor data on Android, iOS and macOS

Ambient Light for iOS and android #

Issues Issues GitHub Pull Requests GitHub GitHub Repo stars

A Flutter plugin to access ambient light sensor data on Android, iOS and macOS. This plugin allows you to retrieve the current ambient light level and listen to continuous updates.

Features #

  • Android: Uses the SensorManager to access the device's ambient light sensor.
  • iOS: Uses CoreMotion to access the ambient light sensor data on compatible iOS devices.
  • macOS: Uses IOKit to access the ambient light sensor data on compatible macOS devices.
  • Retrieve Current Light Level: Get the current ambient light level as a single value.
  • Stream Light Level: Listen to continuous updates of the ambient light level.

Installation #

To use this plugin, you can add it to your Flutter project in one of two ways:

1. Add to pubspec.yaml #

Include the following dependency in your pubspec.yaml file:

dependencies:
  ambient_light: ^0.1.3
  

2. Add directly from the terminal #

Run the following command to add the plugin directly to your project:

flutter pub add ambient_light

Usage #

Import the package and use the provided methods to get ambient light sensor data.

import 'package:ambient_light/ambient_light.dart';

void main() async {
  final AmbientLight _ambientLight = AmbientLight(frontCamera: true);
  
  // Get ambient light value
  double? lightLevel = await _ambientLight.currentAmbientLight();
  print('Ambient light level: $lightLevel');

  // Listen to ambient light sensor data stream
  _ambientLight.ambientLightStream.listen((double lightLevel) {
    print('Ambient light level: $lightLevel');
  });
}

Note

Useful information that users should know, even when skimming content.

  • The frontCamera parameter is iOS only and allows you to specify whether to use the front or back camera for measuring ambient light. For other ?> platforms, you can initialize with the default:
final AmbientLight _ambientLight = AmbientLight();
  • Checkout Example for complete explanation

Methods #

Future<double?> currentAmbientLight();

Returns the current ambient light level as a double. Returns null if the sensor is not available.

Stream<double> get ambientLightStream;

Returns a stream of ambient light sensor data as double.

iOS #

For iOS, the plugin uses CoreMotion to access ambient light sensor data. You need to add the following key to your Info.plist to request access to the camera, which is required for measuring ambient light.


<key>NSCameraUsageDescription</key>
<string>We need access to the camera to measure ambient light.</string>

Contributions #

Contributions are welcome! Please submit a pull request or open an issue to discuss any changes.

Licence #

This project is licensed under the BSD 3-Clause License. See the LICENSE file for details.

6
likes
160
points
381
downloads

Publisher

unverified uploader

Weekly Downloads

A powerful plugin to access ambient light sensor data on Android, iOS and macOS

Homepage
Repository (GitHub)
View/report issues

Topics

#sensor #light #utils #ambient #brightness

Documentation

Documentation
API reference

License

BSD-3-Clause (license)

Dependencies

flutter, flutter_web_plugins, plugin_platform_interface

More

Packages that depend on ambient_light