Skip to content

OpenMapKit Android v0.18

Compare
Choose a tag to compare
@hallahan hallahan released this 06 Feb 00:40
· 146 commits to master since this release

This is a standard release.

Features

Deployments

A deployments UI has been implemented, allowing the user to select a staged deployment of OSM XML & MBTiles data in OpenMapKit Server. Though not fully feature complete, the basic functionality of being able to select a deployment and download the data to the phone has been implemented. Details about this feature are tracked in issue #122.

To use this feature, Add a folder with the name of your deployment, the applicable OSM and MBTiles files, and a manifest.json file in your OpenMapKit Server. See an example here.

OSM SHA1 Checksums

We are now naming the OSM files saved to ODK Collect by the checksum of the OSM data contained within. This is used by OpenMapKit Server and OpenMapKit iD to determine the identity of OSM elements. Because new elements have negative IDs, those IDs are reassigned by OSM when they are finally submitted. We solve this problem by uniquely identifying elements by creating a checksum composed of the internal tags, references, and lat / longs.

You will notice that the OSM files saved on the device have a name that now looks like:

7b371c8b37d3aee943ff518ef2042028e36b388d.osm

Legacy ODK Collect Compatibility

For a while, we were having issues with OpenRosa headers and OpenMapKit Server. OSM files were not being correctly submitted to the server. This problem has been resolved, and you can now use the standard ODK Collect found in the Play Store with this app.

MBTiles HTTP Server

A great deal of R&D has gone into searching for a replacement to the legacy Mapbox Android SDK used to render maps. Because our alternatives do not read MBTiles, we have implemented a lightweight HTTP Server in the app that will serve tiles from MBTiles files. This feature is currently disabled, because we have not yet switched to a new renderer. This can, however, be easily re-enabled.