Pakete, Repositories und App-Kategorien suchen

Paketdetailsv1.0.1

compassx

Flutter-Kompass-Plugin mit echtem Kurs, Genauigkeit und Kalibrierungsanforderungen.

AndroidiOS
30-Tage-Downloads
2130
Likes
20
Pub-Punkte
150

Paket installieren

flutter pub add compassx

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

CompassX ist ein Flutter-Plugin, das Zugriff auf Kompassdaten des Geräts bietet, einschließlich wahrer Richtung, magnetischer Genauigkeit und Kalibrierungsstatus. Es unterstützt sowohl Android als auch iOS und liefert Echtzeit-Orientierungsdaten über die Sensoren des Geräts. Das Plugin eignet sich ideal für Navigation, Kartierung und Anwendungen zur erweiterten Realität, die präzise Richtungsangaben benötigen. Mit minimalem Setup über `flutter pub add compassx` können Entwickler zuverlässige Kompassfunktionen in ihre Apps integrieren. Der Quellcode ist öffentlich auf GitHub verfügbar, um Transparenz und Anpassungsmöglichkeiten zu gewährleisten.

Anwendungsfälle

  • Navigations-Apps
  • erweiterte Realitätserlebnisse
  • Outdoor-Aktivitätsverfolgung
  • Kartenbasierte Anwendungen
  • Orientierte Benutzeroberflächenelemente

Hauptmerkmale

  • Unterstützung des wahren Kurses
  • Berichterstattung zur magnetischen Genauigkeit
  • Echtzeit-Sensoraktualisierungen
  • Kalibrierstatusüberwachung
  • Plattformübergreifende Kompatibilität

Geeignet für

  • Entwickler, die Navigationswerkzeuge erstellen
  • Apps, die eine räumliche Orientierung erfordern
  • AR und ortsbasierte Dienste
  • Mobile Apps, die eine Sensorintegration benötigen

Hinweise

  • Benötigt Gerät mit Magnetometer
  • Die Genauigkeit hängt von der Umgebung ab
  • Benutzerkalibrierung möglicherweise erforderlich
  • Hintergrundoperationen sind auf einigen Geräten eingeschränkt
  • iOS erfordert Datenschutzgenehmigung

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

CompassX

Logo

Provides reliable compass data and extensive documentation.

Usage

StreamBuilder<CompassXEvent>(
  stream: CompassX.events,
  builder: (context, snapshot) {
    if (!snapshot.hasData) return const Text('No data');
    final compass = snapshot.data!;
    return Column(
      mainAxisSize: MainAxisSize.min,
      children: [
        Text('Heading: ${compass.heading}'),
        Text('Accuracy: ${compass.accuracy}'),
        Text('Should calibrate: ${compass.shouldCalibrate}'),
        Transform.rotate(
          angle: compass.heading * math.pi / 180,
          child: Icon(
            Icons.arrow_upward_rounded,
            size: MediaQuery.of(context).size.width - 80,
          ),
        ),
      ],
    );
  },
),
  • heading: The heading relative to true north in degree.
  • accuracy: The accuracy of the sensor data.
  • shouldCalibrate: Whether the sensor should be calibrated or not.

Install

$ flutter pub add compassx

Check the minimum supported version of your project and update as necessary.

  • iOS: 12
  • Android: 21

Request permission to get true heading in Android. Not required on iOS.

$ flutter pub add permission_handler

Specify the permissions one or both of the following in AndroidManifest.xml. It can be copied from example.

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
  • ACCESS_COARSE_LOCATION: Used when normal accuracy is required.
  • ACCESS_FINE_LOCATION: Used when the highest quality accuracy is required.

Add code to request permissions.

if (Platform.isAndroid) await Permission.location.request();

CompassX heading currently supports only portrait mode. It is recommended to fix the orientation of the device.

SystemChrome.setPreferredOrientations([
        DeviceOrientation.portraitUp,
        DeviceOrientation.portraitDown,
      ]);

Testing

It is recommended to use a real device. iOS simulators cannot use the heading sensor (compass). See Testing CompassX for details.

Documentation

If you are going to use this plugin in your product apps, I strongly suggest you read full documentation carefully.

Kategorien

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.