crossresmii / aev

Android library to verify the safety of user devices. Make sure that API calls from your app can be trusted. Instantly detect rooted devices, emulators and other risk factors.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FingerprintJS

Discord server

Android minAPI status Latest release

Android Application Environment Verification API

Android library to verify application environments.

Make sure every API call from a device is safe and trusted.

Instantly detect rooted devices or emulators.

The library sends a set of signals to the server.

The server verifies safety of the application environment.

Table of Contents

  1. Quick start
  2. API keys
  3. Demo App

Quick start

Add the repository to the build.gradle.

If your version of Gradle is earlier than 7, add these lines to your build.gradle.

allprojects {	
  repositories {
  ...
  maven { url 'https://jitpack.io' }	
}}

If your version of Gradle is 7 or newer, add these lines to your settings.gradle.

repositories {
  ...
  maven { url "https://jitpack.io" }
}

Add dependencies

This library depends on kotlin-stdlib, fingerprint-android

Add these lines to build.gradle of a module.

If your application is written in Java, add kotlin-stdlib dependency first (it's lightweight and has excellent backward and forward compatibility).

dependencies {
  implementation "com.github.fingerprintjs:fingerprint-android:1.2"
  implementation "com.github.fingerprintjs:aev:1.0.2"
  // Add this line only if you use this library with Java
  implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}

Get an API keys

A free API keys are required to connect to our Application Environment Verification API. Use the Public one on the client side, and the Secret one on the server side.

To get your API keys, please ping us on Discord or email us at android@fingerprintjs.com (just type API keys in the email subject, no need to compose a body)

Get the request ID

Kotlin

// Initialization
val aevClient = AevClientFactory.getInstance(
    applicationContext,
    YOUR_PUBLIC_API_KEY
)


// Get the RequestID
aevClient.getRequestId(
                listener = { requestId ->
                    // Handle the string with requestId
                },
                errorListener = { error ->
                    // Handle the error string
                })

See the client API reference

Get the results of verification by the request ID

Request

curl https://aev.fpapi.io/api/v1/verify \
  -H 'Content-Type: application/json' \
  -d '{"secretKey": "YOUR_PRIVATE_API_KEY", "requestId": "YOUR_REQUEST_ID"}'

Response

{
  "deviceId": "1xu9l9Ure84KB8CnEbABmteHhhc",
  "results": {
    "rootManagementAppsDetected": true,
    "emulatorDetected": true
  }
}

See the server API reference

Demo app

Try all the features in the Demo App.

PlaygroundApp

Android API support

Android application protection library supports API versions from 21 (Android 5.0) and higher.

Privacy notes

When publishing to the Play Market make sure you've noted the following information about collected data:

Data Types Collected Shared Processed ephemerally Required or Optional Purposes
Installed applications Yes No No Required Fraud Prevention
User IDs Yes No No Required Fraud Prevention
Device or other IDs Yes No No Required Fraud Prevention

License

This library is MIT licensed. Copyright FingerprintJS, Inc. 2020-2022.

About

Android library to verify the safety of user devices. Make sure that API calls from your app can be trusted. Instantly detect rooted devices, emulators and other risk factors.

License:MIT License


Languages

Language:Kotlin 90.5%Language:HTML 9.5%