- センサーリストの取得: まず、利用可能なセンサーリストを取得する方法です。以下のコード例を参考にしてください。
import 'package:sensors_plus/sensors_plus.dart';
void main() {
final sensors = await Sensors.listSensors;
for (final sensor in sensors) {
print(sensor);
}
}
このコードは、利用可能なセンサーのリストを取得し、それをコンソール上に出力します。
- センサーデータの取得: 特定のセンサーからデータを取得する方法です。以下の例では、加速度センサーからデータを取得し、その変化を監視します。
import 'package:sensors_plus/sensors_plus.dart';
void main() {
accelerometerEvents.listen((event) {
print('Accelerometer: ${event.x}, ${event.y}, ${event.z}');
});
}
このコードは、加速度センサーの値が変化するたびに、その値をコンソール上に出力します。
- センサーデータの活用: 取得したセンサーデータをアプリケーション内で活用する方法です。以下の例では、センサーデータを使用して、画面の背景色を変更します。
import 'package:flutter/material.dart';
import 'package:sensors_plus/sensors_plus.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
Color backgroundColor = Colors.white;
@override
void initState() {
super.initState();
accelerometerEvents.listen((event) {
setState(() {
if (event.x > 5) {
backgroundColor = Colors.red;
} else if (event.y > 5) {
backgroundColor = Colors.blue;
} else {
backgroundColor = Colors.white;
}
});
});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Sensor Example'),
),
body: Container(
color: backgroundColor,
),
),
);
}
}
このコードは、加速度センサーの値を監視し、x軸の値が5を超えると背景色を赤に、y軸の値が5を超えると背景色を青に変更します。
以上が、Flutterのsensors_plusパッケージを使用してセンサー機能を活用する方法とコード例の一部です。これらの例を参考にしながら、さまざまなセンサーを活用したアプリケーションの開発を進めてください。