Integration

Singular ad-revenue connector for CloudX Android SDK. Forwards CloudX ad revenue to Singular with no publisher glue code.

Connectors pass data between the CloudX SDK and another product. The Singular connector forwards CloudX ad revenue to your mobile measurement partner (MMP) so ad revenue appears alongside your other Singular data and feeds ROAS measurement. Add the dependency and revenue reporting is automatic — the connector registers itself at process start, joining the same global ad-revenue listener list that CloudX.addAdRevenueListener() uses. Its manifest is merged into your app’s, so there is nothing to call and no initialization order to get right.

Install

repositories {
    maven(url = uri("https://maven.singular.net")) // you already have this
}

dependencies {
    implementation("io.cloudx:connector-singular:12.0.0.0")
}

Singular publishes its Android SDK to its own Maven repository rather than Maven Central, which is why the repository line is part of the snippet. If your app already integrates Singular you will have it; declare it once, wherever your build resolves repositories.

No code changes are required. The connector never initializes Singular; it uses your existing Singular setup and SDK key.

Requirements

  • CloudX Android SDK 4.3.0 or newer.
  • Your app already integrates and initializes the Singular SDK with your own SDK key and secret. The connector depends on the Singular SDK at compile time only, so your app must declare both com.singular.sdk:singular_sdk and the Singular Maven repository (https://maven.singular.net) itself, and your runtime version is the one used.
  • A supported Singular SDK version: 12.0.0 or newer. The connector compiles against 12.0.0, and the ad-revenue API it calls is verified unchanged through 12.16.0.

What gets reported

The connector calls Singular’s Singular.adRevenue once per CloudX-won impression, across all CloudX ad formats — banner, MREC, interstitial, rewarded, native, and app open. Each call carries:

Singular fieldValue
Ad platformCloudX
CurrencyUSD
RevenueThe CloudX revenue estimate for the impression
Revenue precisionestimated
Network nameThe winning ad network, or CloudX when the network is not reported
Ad unit idThe CloudX ad unit id
Ad typeBANNER, MREC, INTERSTITIAL, REWARDED, NATIVE, or APP_OPEN
Ad placement nameThe CloudX placement
Ad unit nameThe network placement

Compatibility

Connector versionSingular SDKMinimum CloudX SDK
12.0.0.0Singular Android SDK >= 12.0.04.3.0

Reporting revenue yourself instead

If you would rather control the reporting call, skip the connector and subscribe to CloudX ad revenue directly:

CloudX.addAdRevenueListener { ad ->
    // Forward to Singular, or any other destination, using your own mapping.
}

CloudX.addAdRevenueListener() is the stable public surface. Use either the connector or your own listener — not both.