# Android SDK

To include the Android SDK in your maven project define a link to our repository and dependency like shown below.

{% code title="pom.xml" %}

```xml
     <dependencies>
        <dependency>
            <groupId>com.licensespring</groupId>
            <artifactId>androidsdk</artifactId>
            <version>1.5.0</version>
        </dependency>

    </dependencies>

    <repositories>
        <repository>
            <id>androidsdk</id>
            <url>https://licensespring-android-sdk.s3.amazonaws.com/</url>
        </repository>
    </repositories>
```

{% endcode %}

If you are using gradle to build your projects, you can include the dependencies for LicenseSpring with the following snippet:

{% code title="build.gradle" %}

```java
repositories {
    mavenLocal()
    maven {
         url "https://licensespring-android-sdk.s3.amazonaws.com"
    }
}

dependencies {
    implementation (group: 'com.licensespring', name: 'androidsdk', version: '1.5.0', ext: 'aar', classifier: 'release') {
		transitive=true
    }
}
```

{% endcode %}

{% hint style="danger" %}
Minimum Android version for this SDK is 8.1 (Oreo - API level 27)
{% endhint %}

Javadoc can be downloaded here:

[Download Android SDK Javadoc (zip)](https://api.archbee.com/api/presign/IJdHyjBlO9LOXOrDnWJTx/dtB9Juu2mtlKsLwu2JAS6_licensespring-android-docs-11.zip)

### Release Notes

#### December 12th, 2023, v1.5.0

Floating Features

FloatingService:

* Added checkLicenseFeature method
* Added releaseFloatingFeature method

LicenseService:

* Added checkLicenseFeature method

#### October 12th, 2023, v1.4.0

* Floating License

#### April 28th, 2023, v1.3.0

* support 'YYYY-MM-DD' date time format in response
* fixed product details response

#### April 19th, 2023, v1.2.0

* fixed air gap license activation code
* fixed air gap license verify
* changed activateAirGapResponse method signature to be able to load policy file from res/raw folder

#### February 22nd, 2023, v1.1.8

* fixed consumtion license check

#### January 30th, 2023, v1.1.7

* remove unused BouncyCastle provider in AirGappedService

#### January 19th, 2023, v1.1.6

* updated java sdk version in config for license tracking (showed up as 1.1.1 until now)

#### January 16th, 2023, v1.1.5

* removed BouncyCastle provider for AirGap - use default provider

see <https://android-developers.googleblog.com/2018/03/cryptography-changes-in-android-p.html> for more info about this change

#### January 10th, 2023, v1.1.4

* added support for multiple licences on the same device. Added the LicenseManagerFactory for creating multiple LicenseManager objects (one for each different license)
* added support for offline user-based licences

#### November 4th, 2022, v1.1.3

* added AirGappedService and LicenseSpringManager methods: `getAirGapActivationCode`, `verifyAirGapConfirmationCode`, `activateAirGapResponse`

#### August 19th, 2022, v1.1.2

* added reinitialize() method - for changing the configuration during runtime

#### August 10th, 2022, v1.1.1

* Added toggleable offlineMode - to change offline mode in runtime

#### June 14th, 2020, v1.1

* Exposed JsonSerialization class.
* Fixed bug with daysRemaining method on License. SUBSCRIPTION license returned max days, instead of CONSUMPTION type.
* Fixed issue with locale datetime support.
* Implemented periodic license check - can be enabled via configuration.
* Added request logging options, default is OFF/NONE.
* Refactored Offline license code from LicenseRepository into a separate class .
* LicenseRepository is now an interface SDK users can implement.
* Added an intitialize() method overload on LicenseSpringManager which accepts the LicenseRepository as the second parameter.
* Added the default implementation of LicenseRepository, no SDK users will not need to change their implementation, unless building a custom LicenseRepository.

#### May 11th, 2020, v1.0

Initial Release of the LicenseSpring Android SDK.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.licensespring.com/sdks/android-sdk.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
