Skip to content

xcarol/overmaps

Repository files navigation

Overmaps

Codacy Badge

Explore two locations concurrently with transparent map overlays.

Discover a new dimension of exploration with Overmaps, an app that redefines the way you compare and analyse two different locations using Google Maps. With the unique ability to overlay two maps with transparency, Overmaps empowers you to delve into intricate details seamlessly. Here are the key features:

  • Search Different Locations: Use the search bar to input addresses or names of locations you want to explore. Find and select two distinct areas for a comprehensive comparison.

  • Map Overlay: Once you've chosen the locations, effortlessly overlay them. Fine-tune transparency using an intuitive control slider for a detailed view of each location.

  • Individual Rotation: Customize the perspective of each location with individual rotation option. Rotate and adjust the angle of each map to achieve the best visualization.

  • Maintained Zoom: Apply desired zoom to one location, and watch it seamlessly transition to the other map. Simplifies the comparison of details and features between two geographic areas.

  • Easy Navigation: Navigate smoothly between the two locations with a simple toggle or interface gesture.

Overmaps provides a fresh and innovative way to gain insights into two locations simultaneously, aiding decision-making and in-depth geographical analysis. Download our app today and embark on a unique exploration experience!

Google Maps Key

Set MAPS_API_KEY environment variable at ./android/secrets.properties for the android app
Set --dart-define=MAPS_API_KEY=key when running flutter

Crashlytics

Got configuration steps from https://firebase.google.com/docs/crashlytics/get-started?platform=flutter

First login to Firebase

firebase login

Then run

flutterfire configure

and select

✔ Select a Firebase project to configure your Flutter application with · overmap-1503847389383 (Overmaps)
✔ Which platforms should your configuration support (use arrow keys & space to select)? · android, web

to generate the files

google-services.json
firebase_options.dart

VSCODE

Set in .vscode/launch.json

"configurations": [
    {
      "name": "overmaps",
      "request": "launch",
      "type": "dart",
      "toolArgs": [
        "--dart-define=MAPS_API_KEY=key"
      ]
    }
  ]
  • MAPS_API_KEY "key" is the same used in the secrets.properties.

Icons

The flutter_launcher_icons tool is used to generate the icons for different platforms

The file used as the app logo is ./lib/assets/logo.png defined in the pubspec.yaml file under the flutter_launcher_icons section.

After updating the logo run: $ dart run flutter_launcher_icons

Build and run Android App

Setup these files:

  • key.properties

    storePassword=(Stored in BitWarden)
    keyPassword=(Stored in BitWarden)
    keyAlias=upload
    storeFile=/home/xcarol/workspace/overmaps/upload-keystore.jks (Stored in BitWarden)

  • local.properties

    sdk.dir=/home/xcarol/workspace/android-sdk/
    flutter.sdk=/home/xcarol/snap/flutter/common/flutter
    flutter.buildMode=release
    flutter.versionName=1.0.0
    flutter.versionCode=1

  • secrets.properties

    MAPS_API_KEY=key

    "key" is stored at Google APIs

Build

Bundle

flutter build appbundle --release --dart-define=MAPS_API_KEY=key

Web

flutter build web --release --dart-define=MAPS_API_KEY=key

  • MAPS_API_KEY "key" is the same used in the secrets.properties.

Application signing and publishing

As this is a one time process, I cannot step back to do the process again, so here I leave useful information in case it is needed do this process again. God willing 🤞😅.

Links to follow:

https://docs.flutter.dev/deployment/android
https://developer.android.com/studio/publish/app-signing#enroll_new
https://play.google.com/console

The keystore (and password) used for the app signing is at the Bitwarden vault. These are the same used in the key.properties file.

Publishing a new version for internal test

  • Modify the last (build) number in version: 1.0.0+X at the pubspec.yaml file before building the new .aab bundle.

  • Build the bundle (as explained above): flutter build appbundle --release --dart-define=MAPS_API_KEY=key

  • Go to: Create an internal test version to upload it.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published