Setup & Requirement
Project Setup
To integrate the MineSec Headless SDK into your Android project, ensure your development environment meets the following requirements:
Item | Required | Recommend | Remarks |
---|---|---|---|
Project SDK (Java) | 1.8+ | 17 | |
Android Target SDK | 34+ | 34 | To ensure compatibility with the latest Android features and security updates. |
Android Gradle Plugin (AGP) | 7.3.0+ | 8.2.0 | |
Android Kotlin Plugin | 1.8.0+ | 1.9.20 |
Sample build gradle files
Below is a sample project's build.gradle.kts
file to help you set up your project with the necessary configurations:
Project's build.gradle.kts
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
id("com.android.application") version "7.3.0" apply false
kotlin("android") version "1.8.0" apply false
}
App's build.gradle.kts
plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
}
android {
namespace = "com.theminesec.example.myapplication"
compileSdk = 34
defaultConfig {
applicationId = "com.theminesec.example.myapplication"
minSdk = 26
targetSdk = 34
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
packagingOptions {
resources {
excludes += "/META-INF/{AL2.0,LGPL2.1}"
excludes += "/META-INF/DEPENDENCIES"
excludes += "/META-INF/LICENSE"
excludes += "/META-INF/LICENSE.txt"
excludes += "/META-INF/license.txt"
excludes += "/META-INF/NOTICE"
excludes += "/META-INF/NOTICE.txt"
excludes += "/META-INF/notice.txt"
excludes += "/META-INF/ASL2.0"
excludes += "/META-INF/*.kotlin_module"
}
}
}
dependencies {
implementation("androidx.core:core-ktx:1.12.0")
implementation("androidx.appcompat:appcompat:1.6.1")
implementation("com.google.android.material:material:1.11.0")
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.1.5")
androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
implementation("com.theminesec.sdk:headless-stage:1.0.17")
}