Coffee Flutter Geolocation

Preview

The Coffee Flutter Geolocation plugin offers robust and efficient location tracking capabilities for Flutter applications, especially designed for background operation. It's a perfect fit for use cases like fitness trackers, location-based services, and more.

Features

  • Background Location Tracking: Continuously track the user's location in the background, ensuring the app remains aware of the user's movements even when not actively in use.
  • Configurable Accuracy: Choose from various accuracy levels to balance between precision and battery efficiency.
  • Custom Notifications: Keep users informed with notifications when the app is tracking their location in the background.
  • Server Integration: Seamlessly send location data to a specified server URL for real-time tracking or analytics.
  • Debug Mode: A debug mode is available to aid in development and troubleshooting.

Getting Started

This project provides a starting point for a Flutter plugin package, with platform-specific implementation code for Android and IOS. It is ideal for applications that require high-precision user location tracking.

Prerequisites

  • Flutter SDK
  • Android Studio or Visual Studio Code
  • Basic understanding of Flutter and Dart
  • Swift, Java

Installation

Add fl_coffee_geolocation as a dependency in your pubspec.yaml file.

Android Setup

Make sure to include the necessary permissions in your Android manifest:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />

iOS Setup

Ensure your iOS project's Info.plist contains the following keys with appropriate descriptions:

<key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
<string>To enhance your experience, we need your real-time location even when the app is in the background, ensuring you're always on the right path.</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>We need your location to help you navigate.</string>
<key>UIApplicationSupportsIndirectInputEvents</key>
<true/>
<key>UIBackgroundModes</key>
<array>
    <string>audio</string>
    <string>fetch</string>
    <string>location</string>
</array>

Support

For help getting started with Flutter development, view the demo on the example directory