Introduction
The Magify Android SDK enables you to integrate analytics, purchases tracking, campaign delivery, remote configuration, and content management into your Android application.
The SDK is designed to provide a lightweight integration experience while remaining flexible enough for custom runtime behavior and advanced application architectures.
Before you begin
Before integrating the SDK, make sure you have access to the Magify Dashboard in order to download your application configuration file.
The SDK is initialized from your Application class and is designed to work as a single shared instance throughout the application lifecycle.
Architecture overview
The main entry point of the SDK is the Magify object.
The SDK is responsible for:
- loading SDK configuration;
- managing client identity;
- synchronizing application state;
- tracking subscriptions and purchases;
- updating runtime content and features;
- communicating with Magify backend services.
The SDK is designed around a single shared instance that lives throughout the entire application lifecycle.
Recommended integration approach
We recommend creating and managing a single shared Magify instance during application startup.
Usually, the SDK is initialized inside your Application class:
import com.magify.sdk.Magify
lateinit var magify: Magify
override fun onCreate() {
val config = MagifyConfig(
applicationName = "android-application",
defaultConfig = "Magify-Config.json",
isSandbox = false
)
magify = Magify.createInstance(androidApp, config)
}
This approach helps avoid conflicts caused by creating multiple SDK instances.
Next step
Now that you understand the SDK architecture, you can proceed to the Installation section to add the Magify Android SDK to your project.