-
Notifications
You must be signed in to change notification settings - Fork 0
Installation
The Convert Android SDK is published to Maven Central as com.convert:sdk-android. It is a standard Android library (AAR) with no special repository requirements beyond Maven Central and Google's Maven repo.
Declare both repositories in settings.gradle.kts, then add the dependency to your app (or library) module:
// settings.gradle.kts
dependencyResolutionManagement {
repositories {
mavenCentral()
google()
}
}
// app/build.gradle.kts
dependencies {
implementation("com.convert:sdk-android:+")
}The + resolves to the latest published version. Pin a specific version in production so your builds are reproducible; replace + with the version shown on the Maven Central listing.
| Toolchain | Minimum |
|---|---|
| JDK (to build) | 17 |
Android API (runtime, minSdk) |
24 (Android 7.0) |
Android API (compile, compileSdk) |
35 recommended |
| Kotlin | 2.x (binary-compatible with any 2.x consumer) |
| Gradle | 8.x |
| Android Gradle Plugin | 8.x or newer |
The SDK targets minSdk 24. Building against a lower minSdk fails — raise your module's minSdk to at least 24.
The SDK ships a consumer-rules.pro inside the AAR. When your app enables R8, those consumer rules are applied automatically — you do not need to copy any keep rules into your own ProGuard configuration.
If you see a stripped-class warning from R8 that points at an SDK class, that indicates a gap in the consumer rules. Open a GitHub issue with the obfuscation report so the rules can be patched.
The SDK requires no permission to function. INTERNET is merged automatically from the library's manifest.
For the best offline-recovery behavior, declare ACCESS_NETWORK_STATE in your app's AndroidManifest.xml:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />The SDK uses this permission to observe connectivity changes. When the device regains connectivity, the SDK triggers an immediate flush of any events queued while offline.
If the permission is missing, the SDK degrades gracefully: it catches the resulting SecurityException during observer registration and continues. Queued events still flush on the next scheduled batch — only the "flush immediately on reconnect" optimization is skipped. See Offline Behavior.
After adding the dependency and initializing the SDK (see Initialization), set logLevel(LogLevel.DEBUG) and watch Logcat:
adb logcat -s ConvertSDK:VA successful integration logs the config fetch and, once ready, fires the ready event. See Troubleshooting if decisions keep returning null.
- Initialization — build the SDK instance and wait for config
- Configuration Options — every builder option
Copyrights © 2026 All Rights Reserved by Convert Insights, Inc.
Getting Started
Android SDK
- Quickstart
- Installation
- Initialization
- Configuration
- Return Types & Models
- Code Examples
- Offline Behavior
- Tracking Control
- Google Play Data Safety
- Java Interop
Core Concepts
- Experiences & Variations
- Feature Flags
- Bucketing Algorithm
- Rule Evaluation
- Segments
- Data Management
- Event System
- API Communication
How-To Guides
- Running Experiences
- Running Features
- Tracking Conversions
- Visitor Context
- Persistent DataStore
- Troubleshooting
Contributing