Giter VIP home page Giter VIP logo

locationmapviewer's Introduction

#LocationMapViewer

An app that can display geografic info in a map. It has support for gpx and kml 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: Android 2.3.7 (API 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=file:/path/to/waypoints.kml
    • displays a vnd.google-earth.kml+xml waypointfile

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..

locationmapviewer's People

Contributors

k3b avatar xinxinxinxinxin avatar

Watchers

James Cloos avatar dev.with 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.