Code Monkey home page Code Monkey logo

kujaku's Introduction

Kujaku (Peacock) Build Status Download Coverage Status

A mapping and check-in library for Android using MapBox SDK (Version 8.3.3)

IMPORTANT UPDATE

Kujaku library and utils artefacts are no longer available on bintray and any builds using these dependencies will fail. Kindly update to use mavenCentral() repository in your build.gradle and the library version 0.9.0 for a successful build. Kindly create an issue in case you face any problems.

Table of Contents

Setup Instructions

Running Sample App

For instructions on how to run the sample app see these instructions.

How to publish artifacts

You can easily publish a snapshot artefact by creating a tag for the library or util module. Follow the steps below:

To publish the utils module

  1. Update the utils version in this file utils\build.gradle in the format X.Y.Z-SNAPSHOT where X, Y and Z should be replaced with the version numbers of the major vesion, minor version and build versions respectively.
  2. Create a PR with the change and have it merged
  3. Generate a tag with the title utils-vX.Y.X-SNAPSHOT and push it. This will trigger a publish of the artefact snapshot version to Sonatype and Github packages

To publish the library module

  1. Follow the steps above to get the latest version of utils as a dependency in your library snapshot
  2. Update the library version in this file library\build.gradle in the format X.Y.Z-SNAPSHOT where X, Y and Z should be replaced with the version numbers of the major vesion, minor version and build versions respectively.
  3. Create a PR with the change and have it merged
  4. Generate a tag with the title library-vX.Y.X-SNAPSHOT and push it. This will trigger a publish of the artefact snapshot version to Sonatype and Github packages

Due to the sunsetting of JFrog Bintray, Kujaku artefacts/release are no longer available on bintray and all publishing is done to Maven Central. Some of the packages are also published to Github packages.

How to import the library

To import the library:

  1. Add the following snippet to your app module build.gradle
...


allprojects {
    repositories {
        mavenCentral()
    }
}

This adds the bintray repository to your configuration

  1. Add the following snippet to your app module build.gradle
...
android {

... 

dependencies {
    ...
    // Kujaku dependencies
    implementation 'io.ona.kujaku:library:0.9.0'
    ...
}
  1. Initialise the library

This can be done in the Application class

KujakuLibrary.init(this);
  1. Set the Mapbox key

This is required before any use of the library such as offline map downloads or viewing a map

Mapbox.getInstance(context, "ACCESS-TOKEN");

How to use the library

The library offers a view KujakuMapView that provides more functionality than Mapbox.

  • For Mapbox related functionality, go here
  • For setup information and extra features provided by this library go here

Unable to resolve artifact: Missing while running tests

This is encountered when Robolectric has problems downloading the jars it needs for different Android SDK levels. If you keep running into this you can download the JARs locally and point Robolectric to them by doing:

./download-robolectric-deps.sh

License

This software is provided under the Apache 2 license, see the LICENSE file for further details.

Acknowledgements

We’d like to acknowledge The Bill and Melinda Gates Foundation and Qualcomm for supporting us in this work.

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.