How to Add the Library to Your Android Studio Project

To create an application which uses ABBYY Mobile Capture SDK, you will need to add the library and its assets to your project. This is required for new projects only — packaged code samples work out of the box.

1. If you are using a Maven or Ivy repository, add the ABBYY Mobile Capture SDK package there. If not, you can copy the library *.aar files to your project or another folder and add this location as a flat repository. For example, add the following to the top-level build.gradle file in your project:

allprojects {
 repositories {
     flatDir {
         dirs '<path to folder with the .AAR files>'

2. Add the libraries dependency to the module-level build.gradle file for each required *.aar file. Please, specify the library name according to your distribution version: abbyy-rtr-sdk-1.0 or abbyy-mi-sdk-2.0 respectively. For example:

dependencies {
   implementation(name:'abbyy-rtr-sdk-1.0', ext:'aar')
   implementation(name:'abbyy-ui-1.0', ext:'aar')

Please, note that for an image capture scenario with UI you need the abbyy-mi-sdk-2.0 version, and for a data capture scenario with UI specify the abbyy-rtr-sdk-1.0 version.

3. In order to use UI components in your project add Kotlin support dependencies to the build.gradle file:

    implementation 'org.jetbrains.kotlin:kotlin-stdlib:1.3.72'
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.6'
    implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.6'
    // If you use support libraries:
    implementation ''
    implementation ''
    // If you use AndroidX aka Jetpack libraries:
    // implementation 'androidx.appcompat:appcompat:1.1.0'
    // implementation 'androidx.recyclerview:recyclerview:1.1.0'

 Note: Adding Kotlin std-lib to 'dependencies' does not add Kotlin support to your project, nor does it pose any restrictions to the language you are using. This is just a regular library dependency.

4. Copy the assets you need from the distribution to your project's assets (by default, app/src/main/assets). There are three types of resources used by the library: dictionaries, patterns, and translation dictionaries. See Distribution Kit for a detailed description of the necessary resources.

 Important! Your application needs Internet connection to gather the information about the current state of the library. Include the following line into your AndroidManifest.xml:

<uses-permission android:name="android.permission.INTERNET" />

 Note:  If you use proguard minification or obfuscation in your release builds, add the following rules to the file:

-keep class** { *; }
-keep class** { *; }

02.03.2022 12:59:15

Usage of Cookies. In order to optimize the website functionality and improve your online experience ABBYY uses cookies. You agree to the usage of cookies when you continue using this site. Further details can be found in our Privacy Notice.