flutter_sensors

Last updated:

0 purchases

flutter_sensors Image
flutter_sensors Images
Add to Cart

Description:

flutter sensors

flutter_sensors #
Simple sensor event listener plugin for flutter(Android & iOS).
Installation #
First add the plugin in your project.
Copy the following line below dependencies in your pubspec.yaml file.
dependencies:
...
flutter_sensors: ^1.0.1
copied to clipboard
Then you need to import the dependency.
import 'package:flutter_sensors/flutter_sensors.dart';
copied to clipboard
iOS configuration #
You need to add the following key-value pair into your Info.plist file inside the ios/Runner folder in your project.
<key>NSMotionUsageDescription</key>
<string>A reason to get the permission</string>
copied to clipboard
Android configuration #
You need to add the following permission in your AndroidManifest.xml to use the step counter.
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
copied to clipboard
How to use #
You register a new listener for an specific sensor.
final stream = await SensorManager().sensorUpdates(
sensorId: Sensors.ACCELEROMETER,
interval: Sensors.SENSOR_DELAY_GAME,
);
_accelSubscription = stream.listen((sensorEvent) {
setState(() {
_accelData = sensorEvent.data;
});
});
copied to clipboard
Also, you can check if an specific sensor is available.
bool accelerometerAvailable =
await SensorManager().isSensorAvailable(Sensors.ACCELEROMETER);
copied to clipboard
Remember to cancel your StreamSubscriptions after you are done with the sensor updates.
_accelSubscription.cancel();
copied to clipboard
Android Only #
You can give the ID of a sensor without using the Sensors class. Example: registering a listener for the TYPE_LIGHT sensor.
int TYPE_LIGHT = 5; // TYPE_LIGHT is equals to 5
// Checking if is available.
bool isAvailable = await SensorManager().isSensorAvailable(TYPE_LIGHT);
// Initialize a stream to receive the updates.
final stream = await SensorManager().sensorUpdates(sensorId: TYPE_LIGHT);
_lightSubscription = stream.listen((sensorEvent) {
setState(() {
_lightData = sensorEvent.data;
});
});
// Cancel the stream after using it.
_lightSubscription.cancel();
copied to clipboard
You can get the rest of the IDs from here.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.