Installation
Prerequisites
| Requirement | Version |
|---|---|
| Android Studio | Arctic Fox (2020.3.1) or later |
| Kotlin | 2.2.0+ |
| Minimum SDK | API 30 (Android 11) |
| Target SDK | API 36 |
| Jetpack Compose | BOM 2025.09.01+ |
Step 1: Configure Maven Repositories
MSA Core is hosted on MineSec's GitHub Package Registry. Add your credentials to your global ~/.gradle/gradle.properties (not the project-level file):
GITHUB_USERNAME=your-github-username
GITHUB_TOKEN=your-github-tokenThen configure the repositories in settings.gradle.kts:
dependencyResolutionManagement {
repositories {
google()
mavenCentral()
val GITHUB_USERNAME: String? by settings
val GITHUB_TOKEN: String? by settings
maven {
name = "MineSecMavenClientRegistry"
url = uri("https://maven.pkg.github.com/theminesec/ms-registry-client")
credentials {
username = GITHUB_USERNAME
password = GITHUB_TOKEN
}
}
}
}Step 2: Add Version Catalog Entries
Add the following to your libs.versions.toml:
[versions]
msaCore = "1.1.0"
headlessMpoc = "2.0.24.1"
[libraries]
msa-core-stage = { group = "com.theminesec.multiplatform", name = "msa-core-stage-android", version.ref = "msaCore" }
msa-core-prod = { group = "com.theminesec.multiplatform", name = "msa-core-android", version.ref = "msaCore" }
headless-mpoc = { module = "com.theminesec.sdk:headless-mpoc-stage", version.ref = "headlessMpoc" }Step 3: Add Dependencies
In your app-level build.gradle.kts:
dependencies {
implementation(libs.headless.mpoc)
// Use staging core for debug, production core for release
debugImplementation(libs.msa.core.stage) {
exclude(group = "MultiplatformMSA", module = "msa-model")
exclude(group = "org.slf4j", module = "slf4j-simple")
}
releaseImplementation(libs.msa.core.prod) {
exclude(group = "MultiplatformMSA", module = "msa-model")
exclude(group = "org.slf4j", module = "slf4j-simple")
}
// Koin for dependency injection (required)
implementation("io.insert-koin:koin-android:3.5.3")
implementation("io.insert-koin:koin-androidx-compose:3.5.3")
}Important: The
msa-modelandslf4j-simpleexclusions are required to avoid dependency conflicts.
Step 4: Sync and Verify
Sync your project with Gradle, then verify the SDK is available:
import com.theminesec.multiplatform.msa_core.acitivty.BaseMsaActivityIf the import resolves without errors, the installation is complete.
Next Steps
- Quickstart — Set up your Application class, MainActivity, and first screen
- Theming & Branding — Customize colors, typography, and images