For #9256: Attempts to fix installation ping not being sent (#9331)

fennec/beta
Sawyer Blatz 4 years ago committed by GitHub
parent 47b2f6a070
commit 9feb44852b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -37,6 +37,8 @@ class AdjustMetricsService(private val application: Application) : MetricsServic
true
)
val installationPing = InstallationPing(application)
config.setOnAttributionChangedListener {
if (!it.network.isNullOrEmpty()) {
application.applicationContext.settings().adjustNetwork =
@ -55,7 +57,7 @@ class AdjustMetricsService(private val application: Application) : MetricsServic
it.campaign
}
InstallationPing(application).checkAndSend()
installationPing.checkAndSend()
}
config.setLogLevel(LogLevel.SUPRESS)

@ -71,14 +71,17 @@ class InstallationPing(private val context: Context) {
}
/**
* Check that required metrics are not empty before attempting to send ping.
* Check that at least one of the metrics values is set before sending the ping.
* Note: it is normal for many of these values to not be set as campaigns do not always
* utilize every attribute!
* */
@VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
internal fun checkMetricsNotEmpty(): Boolean = listOf(
context.settings().adjustCampaignId,
context.settings().adjustAdGroup,
context.settings().adjustCreative,
context.settings().adjustNetwork
).all { it.isNotEmpty() }
).any { it.isNotEmpty() }
/**
* Trigger sending the `installation` ping if it wasn't sent already.

Loading…
Cancel
Save