📡 Strumień eventówEvent Stream

Nasłuchiwanie eventów (Flow)Listening to Events (Flow)
lifecycleScope.launch {
    repeatOnLifecycle(Lifecycle.State.STARTED) {
        ADict.ADS.AdEvents.stream.collect { event ->
            when (event) {
                is AdEvent.Impression -> log("impression", event)
                is AdEvent.Click -> log("click", event)
                is AdEvent.FillSuccess -> log("fill_success", event)
                is AdEvent.FillFail -> log("fill_fail", event)
                is AdEvent.RewardEarned -> log("reward", event)
                is AdEvent.RotationStarted -> log("rotation_start", event)
                is AdEvent.RotationStopped -> log("rotation_stop", event)
                else -> {}
            }
        }
    }
}
Java-friendly listener
ADict.ADS.AdEvents.addListener(object : AdEvents.Listener {
    override fun onEvent(event: AdEvent) {
        // Handle event
    }
})

📈 Snapshot metryk

Pobieranie metryk
val metrics = ADict.ADS.Telemetry.snapshot()
metrics.forEach { row ->
    Log.d("Metrics", """
        Zone: ${row.key.zone}
        Provider: ${row.key.provider}
        Format: ${row.key.format}
        ─────────────────────────
        Attempts: ${row.attempts}
        Success: ${row.success}
        Fails: ${row.fails}
        Fill Rate: ${(row.fillRate * 100).toInt()}%
        ─────────────────────────
        Impressions: ${row.impressions}
        Viewable: ${row.viewable}
        Viewable Rate: ${(row.viewableRate * 100).toInt()}%
        ─────────────────────────
        Clicks: ${row.clicks}
        CTR: ${(row.ctr * 100).toInt()}%
    """.trimIndent())
}

// Reset metryk
ADict.ADS.Telemetry.clear()

📋 Lista wszystkich eventówList of All Events

EventOpisDescriptionPola
ProviderAttemptPróba załadowaniaLoad Attemptzone, provider, format, adUnit
FillSuccessReklama załadowanaAd loadedzone, provider, format, adUnit
FillFailBłąd ładowaniaLoad errorzone, provider, format, adUnit, error
ImpressionWyświetlenieImpressionzone, provider, format, adUnit
ViewableImpressionViewable (≥50%, ≥1s)zone, provider, format, thresholdPct, dwellMs
ClickKliknięcieClickzone, provider, format, adUnit
RotationStartedStart rotacjizone, providers, format
RotationAdvancedZmiana providerazone, fromProvider, toProvider
RotationStoppedStop rotacjizone, reason, format
FullscreenShowAttemptPróba pokazania fullscreenFullscreen show attemptzone, provider, format, adUnit
FullscreenShownFullscreen wyświetlonyFullscreen Shownzone, provider, format, adUnit
FullscreenShowFailBłąd fullscreenFullscreen Errorzone, provider, format, error
FullscreenDismissedFullscreen zamkniętyFullscreen Dismissedzone, provider, format, adUnit
RewardEarnedNagroda earnedzone, provider, adUnit, type, amount
VideoStartStart videozone, provider, format, adUnit
VideoQuartileKwartyl videozone, provider, format, quartile
VideoCompleteKoniec videozone, provider, format, adUnit
VideoMuteChangedZmiana mutezone, provider, format, muted
VideoPausedVideo pausedzone, provider, format, adUnit
VideoResumedVideo resumedzone, provider, format, adUnit