raw_gnss 📡 makes it easy to fetch raw GNSS data including GNSS Measurement Events, GNSS Navigation Messages, and GNSS Status Events.
Since Android 7.0, Android exposed the GNSS APIs required to get raw data points opening up the location black box earlier.
raw_gnss allows you to easily fetch the GNSSMeasurementEvents, GNSSNavigationMessages and GNSSStatus via inbuilt streams.
GNSS Measurements
RawGnss().gnssMeasurementEvents.listen((e) {});
GNSS Navigation Messages
RawGnss().gnssNavigationMessageEvents.listen((e) {});
GNSS Status
RawGnss().gnssStatusEvents.listen((e) {});
StreamBuilder<GnssMeasurementModel>(
builder: (context, snapshot) {
if (snapshot.data == null) {
return CircularProgressIndicator();
}
return ListView.builder(
itemBuilder: (context, position) {
return ListTile(
title: Text(
"Satellite: ${snapshot.data!.measurements![position].svid}"),
);
},
itemCount: snapshot.data!.measurements?.length ?? 0,
);
},
stream: RawGnss().gnssMeasurementEvents,
),
iOS does not yet expose raw location data, hence this plugin does not support iOS as of yet.