diff --git a/build.gradle b/build.gradle
index e24497d..9b8b614 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,5 +1,5 @@
buildscript {
- ext.kotlin_version = '1.8.10'
+ ext.kotlin_version = '2.0.20'
if (!project.hasProperty('version') || project.version.equals('unspecified')) {
project.version = '+'
}
@@ -9,8 +9,9 @@ buildscript {
mavenLocal()
mavenCentral()
}
+
dependencies {
- classpath 'com.android.tools.build:gradle:7.4.1'
+ classpath 'com.android.tools.build:gradle:8.1.4'
classpath 'com.mparticle:android-kit-plugin:' + project.version
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
@@ -18,7 +19,7 @@ buildscript {
plugins {
id "org.sonarqube" version "3.5.0.2730"
- id "org.jlleitschuh.gradle.ktlint" version "11.2.0"
+ id "org.jlleitschuh.gradle.ktlint" version "13.0.0"
}
sonarqube {
@@ -30,13 +31,29 @@ sonarqube {
}
apply plugin: 'org.jlleitschuh.gradle.ktlint'
-apply plugin: 'com.mparticle.kit'
apply plugin: 'kotlin-android'
+apply plugin: 'com.mparticle.kit'
android {
+ namespace 'com.mparticle.kits.comscore'
+ buildFeatures {
+ buildConfig = true
+ }
defaultConfig {
minSdkVersion 21
}
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_17
+ targetCompatibility JavaVersion.VERSION_17
+ }
+ kotlinOptions {
+ jvmTarget = '17'
+ }
+ testOptions {
+ unitTests.all {
+ jvmArgs += ['--add-opens', 'java.base/java.lang=ALL-UNNAMED']
+ }
+ }
}
dependencies {
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index ae04661..e1bef7e 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
diff --git a/src/main/AndroidManifest.xml b/src/main/AndroidManifest.xml
index 3038d69..6136329 100644
--- a/src/main/AndroidManifest.xml
+++ b/src/main/AndroidManifest.xml
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/src/main/kotlin/com/mparticle/kits/ComscoreKit.kt b/src/main/kotlin/com/mparticle/kits/ComscoreKit.kt
index b29d56b..c4af707 100644
--- a/src/main/kotlin/com/mparticle/kits/ComscoreKit.kt
+++ b/src/main/kotlin/com/mparticle/kits/ComscoreKit.kt
@@ -12,22 +12,27 @@ import com.mparticle.MParticle
import com.mparticle.MParticle.IdentityType
import com.mparticle.kits.KitIntegration.ActivityListener
import com.mparticle.kits.KitIntegration.AttributeListener
-import java.util.*
+import java.util.HashMap
+import java.util.LinkedList
-class ComscoreKit : KitIntegration(), KitIntegration.EventListener, AttributeListener,
+class ComscoreKit :
+ KitIntegration(),
+ KitIntegration.EventListener,
+ AttributeListener,
ActivityListener {
private var isEnterprise = false
+
override fun leaveBreadcrumb(breadcrumb: String): List = emptyList()
override fun logError(
message: String,
- errorAttributes: Map
+ errorAttributes: Map,
): List = emptyList()
override fun logException(
exception: Exception,
exceptionAttributes: Map,
- message: String
+ message: String,
): List = emptyList()
override fun logEvent(event: MPEvent): List? {
@@ -59,35 +64,44 @@ class ComscoreKit : KitIntegration(), KitIntegration.EventListener, AttributeLis
messages.add(
ReportingMessage.fromEvent(
this,
- MPEvent.Builder(event).customAttributes(comscoreLabels).build()
- )
+ MPEvent.Builder(event).customAttributes(comscoreLabels).build(),
+ ),
)
return messages
}
override fun logScreen(
screenName: String,
- eventAttributes: Map
- ): List {
- return logEvent(
- MPEvent.Builder(screenName, MParticle.EventType.Navigation)
+ eventAttributes: Map,
+ ): List =
+ logEvent(
+ MPEvent
+ .Builder(screenName, MParticle.EventType.Navigation)
.customAttributes(eventAttributes)
- .build()
+ .build(),
)!!
- }
- override fun setUserAttribute(key: String, value: String) {
+ override fun setUserAttribute(
+ key: String,
+ value: String,
+ ) {
if (isEnterprise) {
- Analytics.getConfiguration()
+ Analytics
+ .getConfiguration()
.setPersistentLabel(KitUtils.sanitizeAttributeKey(key), value)
}
}
- override fun setUserAttributeList(key: String, list: List) {}
+ override fun setUserAttributeList(
+ key: String,
+ list: List,
+ ) {}
+
override fun supportsAttributeLists(): Boolean = !isEnterprise
+
override fun setAllUserAttributes(
attributes: Map,
- attributeLists: Map>
+ attributeLists: Map>,
) {
if (isEnterprise) {
for ((key, value) in attributes) {
@@ -110,7 +124,10 @@ class ComscoreKit : KitIntegration(), KitIntegration.EventListener, AttributeLis
override fun logout(): List = emptyList()
- override fun setUserIdentity(identityType: IdentityType, id: String) {
+ override fun setUserIdentity(
+ identityType: IdentityType,
+ id: String,
+ ) {
if (isEnterprise) {
Analytics.getConfiguration().setPersistentLabel(identityType.toString(), id)
}
@@ -120,11 +137,13 @@ class ComscoreKit : KitIntegration(), KitIntegration.EventListener, AttributeLis
override fun onKitCreate(
settings: Map,
- context: Context
+ context: Context,
): List {
- val partnerConfiguration = PartnerConfiguration.Builder()
- .partnerId(settings[PARTNER_ID])
- .build()
+ val partnerConfiguration =
+ PartnerConfiguration
+ .Builder()
+ .partnerId(settings[PARTNER_ID])
+ .build()
Analytics.getConfiguration().addClient(partnerConfiguration)
val builder = PublisherConfiguration.Builder()
builder.publisherId(getSettings()[CLIENT_ID])
@@ -147,23 +166,22 @@ class ComscoreKit : KitIntegration(), KitIntegration.EventListener, AttributeLis
this,
ReportingMessage.MessageType.APP_STATE_TRANSITION,
System.currentTimeMillis(),
- null
- )
+ null,
+ ),
)
return messageList
}
override fun onActivitySaveInstanceState(
activity: Activity,
- outState: Bundle?
+ outState: Bundle?,
): List = emptyList()
-
override fun onActivityDestroyed(activity: Activity): List = emptyList()
override fun onActivityCreated(
activity: Activity,
- savedInstanceState: Bundle?
+ savedInstanceState: Bundle?,
): List = emptyList()
override fun onActivityResumed(activity: Activity): List {
@@ -174,8 +192,8 @@ class ComscoreKit : KitIntegration(), KitIntegration.EventListener, AttributeLis
this,
ReportingMessage.MessageType.APP_STATE_TRANSITION,
System.currentTimeMillis(),
- null
- )
+ null,
+ ),
)
return messageList
}
@@ -194,9 +212,8 @@ class ComscoreKit : KitIntegration(), KitIntegration.EventListener, AttributeLis
this,
ReportingMessage.MessageType.OPT_OUT,
System.currentTimeMillis(),
- null
- )
- .setOptOut(optOutStatus)
+ null,
+ ).setOptOut(optOutStatus),
)
return messageList
}
diff --git a/src/test/kotlin/com/mparticle/kits/KitTests.kt b/src/test/kotlin/com/mparticle/kits/KitTests.kt
index 222b76e..c77cf5e 100644
--- a/src/test/kotlin/com/mparticle/kits/KitTests.kt
+++ b/src/test/kotlin/com/mparticle/kits/KitTests.kt
@@ -8,7 +8,7 @@ import org.mockito.Mockito
class KitTests {
private val kit: KitIntegration
- get() = ComscoreKit()
+ get() = ComscoreKit()
@Test
@Throws(Exception::class)
@@ -27,7 +27,7 @@ class KitTests {
var e: Exception? = null
try {
val kit = kit
- val settings= HashMap()
+ val settings = HashMap()
settings["fake setting"] = "fake"
kit.onKitCreate(settings, Mockito.mock(Context::class.java))
} catch (ex: Exception) {
@@ -49,6 +49,5 @@ class KitTests {
}
}
Assert.fail("$className not found as a known integration.")
-
}
}