Skip to main content

Veritran Docs

Integration for Android Native Apps

In the integration process for Android native apps, you need to:

  1. Access the necessary resources;

  2. configure build.gradle and dependencies;

  3. modify the manifest; and

  4. sync Gradle files

Access Resources

To access the necessary resources to install XpressPlug for Android native apps, you have to add the following code to the build.gradle file in your Android project, within the React project:

allprojects { 
    repositories { 
        maven { url "https://developer.veritran.com/resources/api/v4/groups/10/-/packages/maven" 
            name "GitLab" 
            credentials(HttpHeaderCredentials) { 
                name = 'Private-Token' 
                value = '<PRIVATE_TOKEN>' 
            } 
            authentication { 
                header(HttpHeaderAuthentication) 
            } 
        } 
    } 

Important

To obtain the private token, send an email to mobile_support@veritran.com with the "XpressPlug Access" assignment, and the team will provide you with the necessary resources.

Configure build.gradle and dependencies

Next, you need to add XpressPlug as a dependency to the current project, with any other dependencies needed. Follow these steps:

  1. Add the following lines to the build.gradle (module) file on you Android project to install the artifacts that are necessary to integrate XpressPlug.

    //Veritran dependencies 
    implementation 'com.veritran:ui:7.9.1.49455' 
    implementation 'com.veritran:ui_interfaces:7.9.1.49455' 
    implementation 'com.veritran:xpressplug:7.9.1.49455' 
    
     
    
    //Third party dependencies 
    implementation 'androidx.constraintlayout:constraintlayout:2.1.3' 
    implementation 'com.karumi:dexter:6.2.1' 
    implementation 'org.nanohttpd:nanohttpd-webserver:2.3.1' 
    implementation 'com.scottyab:rootbeer-lib:0.0.8' 
    implementation 'androidx.core:core:1.3.0' 
    implementation 'androidx.appcompat:appcompat:1.2.0' 
    implementation 'androidx.fragment:fragment:1.1.0' 
    implementation 'com.google.android.gms:play-services-basement:17.0.0' 
    implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.0' 
    implementation 'com.google.code.gson:gson:2.10.1' 
    implementation 'com.google.guava:guava:31.1-android' 
    implementation 'com.madgag.spongycastle:core:1.54.0.0' 
    implementation 'com.madgag.spongycastle:prov:1.54.0.0' 
    implementation 'com.madgag.spongycastle:pkix:1.54.0.0' 
    implementation 'org.apache.commons:commons-text:1.2' 
    implementation 'androidx.recyclerview:recyclerview:1.1.0' 
    implementation 'com.squareup.duktape:duktape-android:1.3.0' 
    implementation 'com.squareup.okhttp3:okhttp:3.12.13' 
    implementation 'com.facebook.soloader:soloader:0.10.3' 
    implementation 'androidx.legacy:legacy-support-v4:1.0.0' 
    implementation 'org.conscrypt:conscrypt-android:2.5.2' 
    implementation 'com.squareup.retrofit2:converter-gson:2.9.0' 
    implementation 'com.squareup.retrofit2:retrofit:2.9.0' 
    implementation 'androidx.security:security-crypto:1.0.0' 
    implementation 'com.airbnb.android:lottie:3.0.7' 
  2. Enable Kotlin for the project by adding the following dependency to the build.gradle project:

    buildscript { 
    ... 
        dependencies { 
    ...	 
          classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0" 
    ... 
        } 
    ... 
    } 
  3. Add the following to the beginning of the build.gradle module:

    apply plugin: 'kotlin-android' 
Modify the Manifest

Then, you need to modify the AndroidManifest.xml in your Android project. See the example below:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    package="com.reactxpressplugexample"> 
    <application 
        android:allowBackup="false" 
        android:fullBackupContent="false" 
      tools:replace="android:allowBackup,android:fullBackupContent,android:label"> 
        <uses-library 
            android:name="org.apache.http.legacy" 
            android:required="false" /> 
    </application> 
</manifest> 

Note

See Android's developer documentation for more information about allowBackup, fullBackupContent and httpLegacy.

Sync Gradle Files

Lastly, you need to sync gradle files. To do this, go to Android Studio, and go to File > Sync Project with Gradle Files. You can also type the following command on your terminal:

./gradlew --refresh-dependencies