https://github.com/asamm/locus-api
Core library for Android "Locus Map" application.
https://github.com/asamm/locus-api
android locus-api locus-map
Last synced: 6 months ago
JSON representation
Core library for Android "Locus Map" application.
- Host: GitHub
- URL: https://github.com/asamm/locus-api
- Owner: asamm
- License: mit
- Created: 2016-05-07T18:44:50.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2025-12-12T07:54:09.000Z (7 months ago)
- Last Synced: 2025-12-13T18:24:42.825Z (7 months ago)
- Topics: android, locus-api, locus-map
- Language: Kotlin
- Size: 1.66 MB
- Stars: 46
- Watchers: 10
- Forks: 15
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Current version |
Structure |
What does it do? |
What it isn't |
Quick start
# Locus API
Library for [Locus Map](https://www.locusmap.app) application for Android devices.
## Current version
Latest stable LT version: [](https://jitpack.io/#asamm/locus-api)
## Structure
Whole API is divided into two separate parts:
- library written in pure Java - **Locus API - Core**
- its extension for Android devices - **Locus API - Android**
In most cases, Android version is the only interesting one here.
## What does it do?
- main purpose is a transport tool for various objects (points/tracks)
- allows to check state of certain functions like periodic updates, units defined by user and more
- allows to control track recording and partially also navigation features
- allows to handle field notes completely
- allows to generate map preview of a certain area & zoom level
## What it isn't
- a replacement for Google Maps API or other map library that substitutes map core to your own application
- a standalone library that may work without Locus Map application
**For creating Locus Map add-ons it is needed to handle only Locus API - Android library. Locus API is automatically added as dependency.**
## Quick start
Add [JitPack](https://jitpack.io) repository to your root `build.gradle` module config.
```gradle.kts
allprojects {
repositories {
maven(url = "https://jitpack.io")
}
}
```
Add dependency to your `build.gradle` module config
```gradle.kts
dependencies {
// get Locus API (Java only)
implementation('com.github.asamm.locus-api:locus-api-core:[latest]')
// or Locus Android API (for Android apps, core included)
implementation('com.github.asamm.locus-api:locus-api-android:[latest]')
}
```
Check for sample use-cases in Locus API - Android sample project.
### Proguard
When using Proguard/R8, test release build properly.
It may be necessary to keep API internal object untouched. To do this, add following proguard config into your module "proguard-rules.pro" file.
```
# Keep Locus API objects
-keep class locus.api.objects.** { *; }
```
## New version release steps
1. Raise version in the `gradle.properties`
* `API_CODE`
* `API_VERSION`
2. update "CHANGELOG" news file
3. commit changes to GitHub
4. tag commit with "X.X.X" pattern