Skip to content

Commit 7d6ec8f

Browse files
authored
Merge pull request #3 from segment-integrations/wenxi/resolve-package-collision
resolve package collision
2 parents 2362146 + a40380f commit 7d6ec8f

File tree

6 files changed

+31
-32
lines changed

6 files changed

+31
-32
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ implementation("com.segment.analytics.kotlin.destinations:appsflyer:1.4.4")
2323
Open the file where you setup and configure the Analytics-Kotlin library. Add this plugin to the list of imports.
2424

2525
```
26-
import com.segment.analytics.kotlin.destinations.plugins.AppsflyerDestination
26+
import com.segment.analytics.kotlin.destinations.appsflyer.AppsflyerDestination
2727
```
2828

2929
Just under your Analytics-Kotlin library setup, call `analytics.add(plugin = ...)` to add an instance of the plugin to the Analytics timeline.

lib/build.gradle.kts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ plugins {
66
id("mvn-publish")
77
}
88

9+
val VERSION_NAME: String by project
10+
911
android {
1012
compileSdk = 31
1113
buildToolsVersion = "31.0.0"
@@ -17,6 +19,8 @@ android {
1719

1820
testInstrumentationRunner = "android.support.test.runner.AndroidJUnitRunner"
1921
consumerProguardFiles("proguard-consumer-rules.pro")
22+
23+
buildConfigField("String", "VERSION_NAME", "\"$VERSION_NAME\"")
2024
}
2125

2226
buildTypes {
@@ -38,7 +42,7 @@ android {
3842
dependencies {
3943
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:1.1.5")
4044

41-
implementation("com.segment.analytics.kotlin:android:1.4.3")
45+
implementation("com.segment.analytics.kotlin:android:1.5.0")
4246
implementation("androidx.multidex:multidex:2.0.1")
4347

4448
implementation("androidx.core:core-ktx:1.7.0")
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
1-
package com.segment.analytics.kotlin.destinations.plugins
1+
package com.segment.analytics.kotlin.destinations.appsflyer
22

33
import androidx.test.ext.junit.runners.AndroidJUnit4
44
import androidx.test.platform.app.InstrumentationRegistry
5-
5+
import org.junit.Assert
66
import org.junit.Test
77
import org.junit.runner.RunWith
88

9-
import org.junit.Assert.*
10-
119
/**
1210
* Instrumented test, which will execute on an Android device.
1311
*
@@ -19,6 +17,9 @@ class ExampleInstrumentedTest {
1917
fun useAppContext() {
2018
// Context of the app under test.
2119
val appContext = InstrumentationRegistry.getInstrumentation().targetContext
22-
assertEquals("com.segment.analytics.kotlin.destinations.plugins.test", appContext.packageName)
20+
Assert.assertEquals(
21+
"com.segment.analytics.kotlin.destinations.appsflyer.test",
22+
appContext.packageName
23+
)
2324
}
2425
}

lib/src/main/AndroidManifest.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3-
package="com.segment.analytics.kotlin.destinations.plugins">
3+
package="com.segment.analytics.kotlin.destinations.appsflyer">
44

55
</manifest>
Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.segment.analytics.kotlin.destinations.plugins
1+
package com.segment.analytics.kotlin.destinations.appsflyer
22

33
import android.app.Activity
44
import android.content.Context
@@ -13,6 +13,7 @@ import android.os.Bundle
1313
import com.appsflyer.AFInAppEventParameterName
1414
import com.segment.analytics.kotlin.android.plugins.AndroidLifecycle
1515
import com.appsflyer.deeplink.DeepLinkListener
16+
import com.segment.analytics.kotlin.core.platform.VersionedPlugin
1617
import com.segment.analytics.kotlin.core.platform.plugins.logger.*
1718
import com.segment.analytics.kotlin.core.utilities.getString
1819
import com.segment.analytics.kotlin.core.utilities.mapTransform
@@ -61,7 +62,7 @@ data class AppsFlyerSettings(
6162
class AppsFlyerDestination(
6263
private val applicationContext: Context,
6364
private var isDebug: Boolean = false
64-
) : DestinationPlugin(), AndroidLifecycle {
65+
) : DestinationPlugin(), AndroidLifecycle, VersionedPlugin {
6566

6667
internal var settings: AppsFlyerSettings? = null
6768
internal var appsflyer: AppsFlyerLib? = null
@@ -237,4 +238,8 @@ class AppsFlyerDestination(
237238
}
238239
}
239240

241+
override fun version(): String {
242+
return BuildConfig.VERSION_NAME
243+
}
244+
240245
}
Lines changed: 11 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.segment.analytics.kotlin.destinations.plugins
1+
package com.segment.analytics.kotlin.destinations.appsflyer
22

33
import android.app.Activity
44
import android.content.Context
@@ -7,23 +7,12 @@ import androidx.core.os.bundleOf
77
import com.appsflyer.AppsFlyerLib
88
import com.segment.analytics.kotlin.core.*
99
import com.segment.analytics.kotlin.core.platform.Plugin
10-
import io.mockk.Called
11-
import io.mockk.MockKAnnotations
12-
import io.mockk.every
10+
import com.segment.analytics.kotlin.destinations.appsflyer.AppsFlyerDestination
11+
import io.mockk.*
1312
import io.mockk.impl.annotations.MockK
14-
import io.mockk.mockk
15-
import io.mockk.mockkStatic
16-
import io.mockk.verify
1713
import kotlinx.serialization.decodeFromString
18-
import kotlinx.serialization.json.Json
19-
import kotlinx.serialization.json.buildJsonArray
20-
import kotlinx.serialization.json.buildJsonObject
21-
import kotlinx.serialization.json.put
22-
import kotlinx.serialization.json.add
23-
import org.junit.jupiter.api.Assertions.assertTrue
24-
import org.junit.jupiter.api.Assertions.assertEquals
25-
import org.junit.jupiter.api.Assertions.assertFalse
26-
import org.junit.jupiter.api.Assertions.assertNotNull
14+
import kotlinx.serialization.json.*
15+
import org.junit.jupiter.api.Assertions
2716
import org.junit.jupiter.api.Nested
2817
import org.junit.jupiter.api.Test
2918

@@ -78,10 +67,10 @@ class AppsflyerDestinationTests {
7867
appsflyerDestination.update(settingsBlob, Plugin.UpdateType.Initial)
7968

8069
/* assertions about config */
81-
assertNotNull(appsflyerDestination.settings)
70+
Assertions.assertNotNull(appsflyerDestination.settings)
8271
with(appsflyerDestination.settings!!) {
83-
assertTrue(trackAttributionData)
84-
assertEquals("devKey", appsFlyerDevKey)
72+
Assertions.assertTrue(trackAttributionData)
73+
Assertions.assertEquals("devKey", appsFlyerDevKey)
8574
}
8675

8776
verify { mockAppsflyer.init("devKey", isNull(inverse = true), mockContext) }
@@ -118,10 +107,10 @@ class AppsflyerDestinationTests {
118107
appsflyerDestination.update(settingsBlob, Plugin.UpdateType.Initial)
119108

120109
/* assertions about config */
121-
assertNotNull(appsflyerDestination.settings)
110+
Assertions.assertNotNull(appsflyerDestination.settings)
122111
with(appsflyerDestination.settings!!) {
123-
assertFalse(trackAttributionData)
124-
assertEquals("devKey", appsFlyerDevKey)
112+
Assertions.assertFalse(trackAttributionData)
113+
Assertions.assertEquals("devKey", appsFlyerDevKey)
125114
}
126115

127116
verify { mockAppsflyer.init("devKey", isNull(), mockContext) }

0 commit comments

Comments
 (0)