raw_gnss 📡


raw_gnss 📡 makes it easy to fetch raw GNSS data including GNSS Measurement Events, GNSS Navigation Messages, and GNSS Status Events.


Get Raw GNSS Data On Android

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.

Usage

GNSS Measurements

  RawGnss().gnssMeasurementEvents.listen((e) {});

GNSS Navigation Messages

  RawGnss().gnssNavigationMessageEvents.listen((e) {});

GNSS Status

  RawGnss().gnssStatusEvents.listen((e) {});

Platform Support

⚠️ Android Only - This plugin currently supports Android 7.0+ only. iOS and macOS are not supported as they do not expose raw GNSS APIs.

Example: Fetch GNSSMeasurementModels

  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,
  ),