Skip to main content

Installation

Markdown

To configure the SDK in your project, follow these steps:

Step 1 — Add the Maven repository

The Android SDK is distributed through Unico's own Maven repository. Add it to the dependencyResolutionManagement block in your settings.gradle file:

settings.gradle.kts
dependencyResolutionManagement {
repositories {
google()
mavenCentral()
maven("https://maven-sdk.unico.run/sdk-mobile")
}
}
Older projects

If you're still using the root-level build.gradle/build.gradle.kts to declare repositories, add the Unico repository to the allprojects block instead:

build.gradle.kts (project)
allprojects {
repositories {
google()
mavenCentral()
maven("https://maven-sdk.unico.run/sdk-mobile")
}
}
Step 2 — Enable AndroidX support (if needed)

Add the following to gradle.properties at the project root:

gradle.properties
android.useAndroidX=true
Jetifier

For AGP 8.6+ projects, Jetifier is disabled by default. Only add android.enableJetifier=true if your project still depends on legacy support-library artifacts that have not migrated to AndroidX — enabling it unnecessarily increases build time.

Step 3 — Add the SDK dependency

Add io.unico:capture to the dependencies block in your module-level build file. Replace <latest_version> with the current version (6.13.0) — see Release Notes for the latest:

app/build.gradle.kts (module)
dependencies {
implementation("io.unico:capture:<latest_version>")
}
Legacy package naming

The Java/Kotlin package com.acesso.acessobio_android reflects legacy Acesso Digital branding and will not change for this SDK version. The same SDK is referred to as UnicoCheck in the API Reference and other Unico materials.

Step 4 — Set Java compatibility

Required for compatibility with the SDK's minimum supported API level (26). Add the following to compileOptions in the same module-level build file:

app/build.gradle.kts (module)
android {
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
}
Step 5 — Add AndroidManifest permissions

Add the minimum required permissions and hardware feature declaration to your AndroidManifest.xml:

AndroidManifest.xml
<uses-feature android:name="android.hardware.camera" android:required="true" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
Play Store delivery filtering

The <uses-feature> declaration signals to the Play Store that the app requires a camera, filtering it out for devices that lack one. Set android:required="false" only if your app has a camera-free fallback path.

Runtime permission

Your app is responsible for requesting the CAMERA permission from the user at runtime before opening a capture session. Without a granted permission, the SDK will not be able to open the camera.

WebView scenario

Some hybrid apps use the native Android SDK for standard biometric flows while rendering specific journeys (such as custom onboarding flows or region-specific experiences) through the Web SDK inside a WebView. If your app follows this pattern, additional permissions are required. Refer to the Web SDK integration guide for the full list.