Android SDK Reference
Kotlin API reference for the mimOE Android SDK v1.0.0.
Quick Start
// 1. Create client
val client = MimOEClient(applicationContext)
// 2. Configure
val config = mimOEConfig {
license = "ey..."
port = 8083
capabilities {
+Capability.AI
+Capability.MESH
}
}
// 3. Start
client.start(config)
.onSuccess { info -> Log.d("App", "Running on port ${info.port}") }
.onFailure { error -> Log.e("App", "Failed: ${error.message}") }
// 4. Use sub-client APIs
client.account.getMe()
client.auth.loginWithDeveloperToken(clientId, token)
client.mcm.deployMim(name, imageName)
client.inference.chatCompletion(model, messages)
client.insight.discoverLinkLocal()
Packages
| Package | Description |
|---|---|
com.mimik.mimoe | Main entry point, configuration, errors, and state |
com.mimik.mimoe.auth | Authentication and token management |
com.mimik.mimoe.account | Node identity and account association |
com.mimik.mimoe.mcm | Microservice deployment (MCM) |
com.mimik.mimoe.addons | Addon installation and management |
com.mimik.mimoe.inference | AI chat completions, streaming, embeddings |
com.mimik.mimoe.models | On-device model registry |
com.mimik.mimoe.insight | Mesh discovery and networking |
Installation
Dependencies
The SDK is published as a single artifact (mimoe-android-sdk). Add it alongside the runtime variant your app needs:
dependencies {
// SDK (API layer)
implementation("com.mimik:mimoe-android-sdk:1.0.0")
// Runtime — pick ONE from the table below
implementation("com.mimik:mimoe-android-runtime-developer-ai:3.18.0")
}
Runtime Variants
| Runtime Artifact | Environment | AI Inference |
|---|---|---|
mimoe-android-runtime-developer-ai | Development | Yes |
mimoe-android-runtime-developer | Development | No |
mimoe-android-runtime-ai | Production | Yes |
mimoe-android-runtime | Production | No |
Environment: developer variants connect to the development broker; non-developer variants connect to production. The SDK API is identical across both.
AI Inference: ai variants include the AI runtime and enable the Inference and Model Registry sub-clients. Non-AI variants include all other capabilities (authentication, MCM, mesh discovery, addons).
Gradle Setup
Configure the repositories in settings.gradle.kts:
dependencyResolutionManagement {
repositories {
google()
mavenCentral()
// mimOE SDK + Runtime
maven {
url = uri("https://maven.pkg.github.com/mimik-mimOE/mimOE-android")
credentials {
username = providers.gradleProperty("github.user").get()
password = providers.gradleProperty("github.token").get()
}
}
}
}