📥 Installation Android
Le SDK Android n'est pas encore sur Maven Central ou JitPack. Utilisez la configuration AAR local (répertoire plat) ci-dessous, comme dans l'application Android d'exemple. Téléchargez l'AAR depuis la page Téléchargements et sources d'installation.
AAR local (répertoire plat dans app/libs)
Utilisez l'AAR en le plaçant dans app/libs avec une arborescence de type Maven et en pointant settings.gradle.kts vers ce dossier. Cela correspond au projet Android d'exemple.
Étape 1 : Télécharger l'AAR du SDK
- Allez sur la page Téléchargements et sources d'installation.
- Téléchargez l'AAR du SDK Android (zip ou dossier de type Maven).
- Décompressez pour obtenir cette arborescence sous un seul dossier (ex.
app/libs) :com/azeoo/sdk/<version>/sdk-<version>.aarcom/azeoo/sdk/<version>/sdk-<version>.pom(et éventuellement.module)- Optionnellement
com/azeoo/sdk/maven-metadata-local.xml
Étape 2 : Placer l'AAR dans app/libs
Placez le contenu décompressé de sorte que app/libs soit la racine du dépôt (le dossier qui contient com/azeoo/sdk/...). Votre structure doit ressembler à :
your-project/
android/
settings.gradle.kts
app/
build.gradle.kts
libs/ ← flat directory root (same as example)
com/
azeoo/
sdk/
1.0.4/
sdk-1.0.4.aar
sdk-1.0.4.pom
maven-metadata-local.xml
Étape 3 : Pointer Gradle vers app/libs dans settings.gradle.kts
Dans votre settings.gradle.kts au niveau projet, ajoutez un dépôt maven dont l'URL est ${rootDir}/app/libs (comme dans l'exemple) :
// settings.gradle.kts
pluginManagement {
repositories {
google {
content {
includeGroupByRegex("com\\.android.*")
includeGroupByRegex("com\\.google.*")
includeGroupByRegex("androidx.*")
}
}
mavenCentral()
gradlePluginPortal()
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
mavenLocal()
// Local AAR (flat directory) — Azeoo SDK
maven {
url = uri("${rootDir}/app/libs")
}
// Flutter engine (required by Azeoo SDK)
maven("https://storage.googleapis.com/download.flutter.io")
}
}
rootProject.name = "My Application"
include(":app")
Étape 4 : Déclarer la dépendance
Option A — Catalogue de versions (recommandé, comme l'exemple)
Dans gradle/libs.versions.toml :
[versions]
sdk = "1.0.4" # must match the version folder under app/libs/com/azeoo/sdk/
[libraries]
sdk = { module = "com.azeoo:sdk", version.ref = "sdk" }
Dans app/build.gradle.kts :
dependencies {
implementation(libs.sdk)
// ... other dependencies
}
Option B — Coordonnées directes
Dans app/build.gradle.kts :
dependencies {
implementation("com.azeoo:sdk:1.0.4") // version doit correspondre à app/libs/com/azeoo/sdk/
// ... autres dépendances
}
Étape 4b : Obligatoire — filtres ABI NDK dans le module app
Vous devez ajouter ndk.abiFilters dans votre module application (app/build.gradle.kts). L'AAR du SDK Azeoo ne le fait pas pour vous — Gradle ne fusionne pas les filtres ABI d'une dépendance Maven dans votre app.
Le SDK inclut les bibliothèques natives Flutter et JNI (libflutter.so, .so des plugins) pour un ensemble fixe d'architectures CPU. Votre application doit déclarer les mêmes ABI pour que Gradle empaquette les bons fichiers .so dans l'APK. Sans cela, vous pouvez avoir des échecs de build ou des erreurs à l'exécution comme UnsatisfiedLinkError: dlopen failed.
Ajoutez ceci dans android { defaultConfig { ... } } de app/build.gradle.kts (pas seulement dans le projet d'exemple) :
android {
defaultConfig {
// ... applicationId, minSdk, etc.
ndk {
// Doit correspondre aux architectures supportées par Flutter / SDK Azeoo
abiFilters += listOf("armeabi-v7a", "arm64-v8a", "x86_64")
}
}
}
| ABI | Usage typique |
|---|---|
armeabi-v7a | téléphones ARM 32 bits |
arm64-v8a | téléphones ARM 64 bits (majorité des appareils) |
x86_64 | émulateurs et certaines tablettes |
Même si le build debug fonctionne sans ce bloc, conservez ces filtres en release pour garder les ABI alignées avec le SDK sur appareils et émulateurs.
abiFilters est un réglage Android Gradle Plugin du module application (ou bibliothèque locale). Un AAR com.azeoo:sdk publié ne livre que des libs jni/ précompilées ; il ne peut pas injecter defaultConfig dans votre build.gradle.kts. L'app Android d'exemple contient le même bloc pour cette raison.
Étape 5 : Synchroniser et vérifier
Synchronisez Gradle. Si le projet compile et que vous pouvez utiliser import com.azeoo.sdk.AzeooSDK, la configuration AAR local est correcte.
Prérequis
- minSdkVersion : 21 (Android 5.0)
- targetSdkVersion : dernière version
- Kotlin : 1.9.0 ou ultérieur
- Gradle : 8.0 ou ultérieur
Règles ProGuard
Si vous utilisez ProGuard, ajoutez dans proguard-rules.pro :
-keep class com.azeoo.sdk.** { *; }
-keep interface com.azeoo.sdk.** { *; }
-dontwarn com.azeoo.sdk.**
Étapes suivantes
- Guide d'intégration — Intégrer le SDK dans votre application
- Configuration — Paramètres du SDK
- Référence API — Documentation API