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.

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.

Related articles

Your own integration

IPopup

InAppProduct

Introduction

External validation

Products