Code Monkey home page Code Monkey logo

locationmapviewer's Introduction

LocationMapViewer

An android app to display geografic information from url or local gpx/kml/kmz/zip file in a map.

It has support for gpx, kml and kmz files and geo-uri-s and can work offline (without internet/wifi) once geodata is downloaded and cached.

Other Android apps can use LocationMapViewer through an Intent interface (see GeoIntentDemo.java ) or through html links like <a href="geo:0,0?q=53.0,8.0(Hello)">geo:0,0?q=53.0,8.0(Hello)</a>

Minimal requirements:

  • version v0.3.5.170911(6)
    • Android-2.3.7 - Android-7 (API 10ff)
  • version v0.3.7.210429
    • Android-4.1 and later (API 16ff)
    • compatible with android-10
  • internet/wifi-connection to download geodata and a SD-Card to cache geodata

Licence: GPLv3

Requred permissions:

  • INTERNET: to download map data from Open Streetmap Server
  • ACCESS_NETWORK_STATE and ACCESS_WIFI_STATE: to find out if wifi/internet is online to start downloaded geodata
  • WRITE_EXTERNAL_STORAGE
    • to cache downloaded map data in local file system
    • to load gpx/kml-Files to be displayed in the map
  • ACCESS_FINE_LOCATION and ACCESS_COARSE_LOCATION: to display my own location in the map, too

The code uses osmdroid library with osmbonuspack library to display maps from Open Street Map.

Intent Interface

Other Android apps can use LocationMapViewer as plug-in/device-driver through an Intent interface or through html-a-href-links.

Examples:

  • uri=geo:... displays (and zomms to) a geo uri
    • geo:0,0?q=53.0,8.0(Hello)
      • displays "hello" at the location lat=53.0 north and lon= 8.0 east.
      • in html you can use <a href="geo:0,0?q=53.0,8.0(Hello)">geo:0,0?q=53.0,8.0(Hello)</a>
      • this format is compatible with google-maps for android
    • geo:53.0,8.0?q=(Hello)
      • displays "hello" at the location lat=53.0 north and lon= 8.0 east
      • this format is not compatible with google-maps for android
    • geo:53.0,8.0?z=6
      • displays a pin at the location using zoomlevel "6"
  • uri=file:/path/to/waypoints.gpx
    • displays a xml+gpx waypointfile
  • uri=content:/path/to/waypoints.kml
    • displays a vnd.google-earth.kml+xml waypointfile

LocationMapViewer can handle local files that end with

  • .kml, .kml.zip, .kmz (kml in zip)
  • .gpx, .gpx.zip, .gpz (gpx in zip)
  • .poi, .poi.zip, .poz (poi in zip)

LocationMapViewer can handle http(s): and content: urls with mime

  • application/vnd.google-earth.kml+xml
  • application/vnd.google-earth.kmz
  • application/xml+kml
  • application/xml+gpx
  • application/xml+poi
  • application/zip+xml+kml
  • application/zip+xml+gpx
  • application/zip+xml+poi

LocationMapViewer is designed to be used by other apps. This means in Terms of GPLv3 that your app that uses the Intent-Iterface is not considered a Derived Work.

In other words: you can used LocationMapViewer as a driver for your non gpl/non opensource app..

For more informations see https://github.com/k3b/LocationMapViewer/wiki


Donations:

If you like this app please consider to donating to https://wiki.openstreetmap.org/wiki/Donations .

Since android-developping is a hobby (and an education tool) i donot want any money for my apps so donation should go to projects i benefit from.

locationmapviewer's People

Contributors

k3b avatar xinxinxinxinxin avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.