I have an application using GeoServer and OpenLayers web platform, but must use the Android OpenLayers offline.

My doubt is the following, I can install GeoServer on Android? to work with OpenLayers using phonegap?

Do you have any suggestions on the other hand is the platform?

Dmitry Baryshnikov and west Efan provided links and explanations, most like to take one more question.

Today I have an application OpenLayers to be communicating with a server "GeoServer"

I would like to take my OpenLayers JavaScript in mobile, offline however, I would like somehow I store GeoServer data (WMS with JSON) that OpenLayers need on Android, or some other way to do this?

  • You won't be able to have a WMS serving JSON; WMS only provides map data as images. You could try WFS if you want JSON. You appear to be using GeoServer as some sort of generic term, however GeoServer is a specific software product for providing web services, such as WMS, WFS, WCS, WPS... – nmtoken Jan 9 '17 at 19:32

GeoServer is spatial data source. Android is one of a client, such as desktop or web. For Android you can use such SDKs:

  1. NextGIS Android SDK - https://github.com/nextgis/android_maplib and https://github.com/nextgis/android_maplibui docs: http://docs.nextgis.com/ngmobile_dev/maplib/com/nextgis/maplib/api/IGISApplication.html
  2. OSMDroid - https://github.com/osmdroid/osmdroid
  3. MapBox Android SDK - https://github.com/mapbox/mapbox-gl-native docs: https://www.mapbox.com/android-sdk/
  4. Glob3 https://github.com/glob3mobile/g3m
  5. MapsMe https://github.com/mapsme/omim
| improve this answer | |

Additionally to Dmitry Baryshnikov's great selection I can add mapsforge: https://github.com/mapsforge/mapsforge

It also has a phonegap implementation already: https://github.com/afsuarez/mapsforge-cordova-plugin

To use it with OpenLayers you can use the tilerendering of mapsforge and load the tiles via ol.source.XYZ with the filepath of the mapcache.

To your second question, you could use a local database/storage(e.g. SQLite) to store the information from your geoserver and retrieve the information on demand to render it in OpenLayers.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.