Канал Friflex о разработке на Flutter. Обновления, плагины, полезные материалы — превращаем знания в реальный опыт, доступный каждому разработчику.
🔗 Наш канал для разработчиков: @friflex_dev
🔗 Канал о продуктовой разработке: @friflex_product
Post #369
804
🪙Привет! Это Анна, Friflex Flutter Team Lead
Знаете, как во Flutter-приложении получать информацию от аппаратных датчиков движения? Сейчас узнаете!
В этой задаче вам поможет плагин sensors_plus. Как описывают его разработчики — он дает возможность вашему Flutter-приложению обращаться к сенсорам устройства, таким как:
▪️ акселерометр
▪️ гироскоп
▪️ барометр
▪️ магнитометр
Как это работает?
Через плагин приложение обращается в платформу. Натив считывает данные с сенсоров и полученные данные передает во Flutter посредством Streams (потоков). В приложении же вам достаточно подписаться на необходимый поток с данными.
Библиотека дает возможность отслеживать данные по пяти основным событиям:
✔️
✔️
✔️
✔️
✔️
Использовать очень просто. Достаточно подписаться на поток данных по необходимому событию.
Не забывайте закрывать подписки
Для чего может быть полезно?
Представим, вам нужно сделать реализацию как в банках — при перевороте экрана требуется скрывать или открывать данные на экране. Или при тряске устройства небходимо выполнять перезапрос данных. Для всех этих задач sensors_plus точно будет полезен.
Знаете, как во Flutter-приложении получать информацию от аппаратных датчиков движения? Сейчас узнаете!
В этой задаче вам поможет плагин sensors_plus. Как описывают его разработчики — он дает возможность вашему Flutter-приложению обращаться к сенсорам устройства, таким как:
▪️ акселерометр
▪️ гироскоп
▪️ барометр
▪️ магнитометр
Как это работает?
Через плагин приложение обращается в платформу. Натив считывает данные с сенсоров и полученные данные передает во Flutter посредством Streams (потоков). В приложении же вам достаточно подписаться на необходимый поток с данными.
Библиотека дает возможность отслеживать данные по пяти основным событиям:
✔️
AccelerometerEvent — ускорение устройства. Это событие не фильтрует гравитацию, поэтому в состоянии покоя покажет всегда 9.8 м/с² вверх✔️
UserAccelerometerEvent — в отличие от AccelerometerEvent отражает только фактическое ускорение устройства. Поток исключает гравитацию, что в состоянии покоя покажет 0✔️
GyroscopeEvent — вращение устройства✔️
MagnetometerEvent — данные окружающего магнитного поля. ✔️
BarometerEvent — текущее атмосферное давлениеИспользовать очень просто. Достаточно подписаться на поток данных по необходимому событию.
late StreamSubscription<AccelerometerEvent> _accelerometerSubscription;
...
_accelerometerSubscription = accelerometerEventStream().listen((event) {
print('x: ${event.x}, y: ${event.y}, z: ${event.z}');
});
Не забывайте закрывать подписки
_accelerometerSubscription.cancel();
Для чего может быть полезно?
Представим, вам нужно сделать реализацию как в банках — при перевороте экрана требуется скрывать или открывать данные на экране. Или при тряске устройства небходимо выполнять перезапрос данных. Для всех этих задач sensors_plus точно будет полезен.
- ❤ 6
- 🔥 3
- 🤩 1











