Kotzilla SDK version upgrades
this page is intended to help you migrate between major SDK updates that might require to go over some breaking changes
From 0.12.x to 0.13.x
This version 0.13.0 brings important breaking changes such as renamings, and package move. Check the list of changes below
Going from 0.12.x to 0.13.0 requires you to download a Kotzilla project, also known as kotzilla.json
file.
See Kotzilla Project File page.
Maven Package Changes
See Latest Version to check for last version.
In your application Gradle file (build.gradle.kts
) you replace the following:
plugins {
// Kotzilla Gradle plugin
id("io.kotzilla.kotzilla-plugin") version "0.13.0" apply false
}
dependencies {
// The Kotzilla SDK library dependency
implementation("io.kotzilla:kotzilla-sdk:0.13.0")
}
- moved Maven package from
io.kotzilla:cloud-inject
toio.kotzilla:kotzilla-sdk
- moved Maven package from
io.kotzilla:cloud-inject-gradle
toio.kotzilla:kotzilla-gradle
SDK Setup
You can use the SDK now with the KotzillaSDK
class. In your Android app Application
class, you need to activate the Kotzilla platform with KotzillaSDK.setup(this)
:
class MainApplication : Application() {
override fun onCreate() {
super.onCreate()
// Start Kotzilla SDK
KotzillaSDK.setup(this)
// Start Koin
startKoin {
// replace your logger with Kotzilla Analytics
analyticsLogger()
// Your Koin config here
}
}
}
Still you need to start your Koin configuration, by using analyticsLogger()
to activate SDK analytics.
- class
CloudInjectSDK
has nee renamed toKotzillaSDK
For more advanced SDK usage (like for Android library) look at Android Library Setup page
Gradle Plugin Configuration
The Kotzilla Gradle Plugin offers the following tasks to help manage your project:
- task
uploadMappingFile
to upload your build's mapping file to the Kotzilla server to help recognised your application symbols see more - task
generateAndroidAssetsKey
to generate container key fromkotzilla.json
project file see more - task
generateProjectFile
to generate emptykotzilla.json
with all package see more
Besides that you may need to configure manually, like for versionName
:
plugins {
// Be sure to have the Kotzilla Gradle plugin
id("io.kotzilla.kotzilla-plugin") version "0.13.0" apply false
}
//...
// Advanced Kotzilla SDK coniguration
kotzilla {
versionName = "1.0"
}
ProGuard Rules
You can update your ProGuard rules file with the following rules:
-keep class io.kotzilla.json.** { *; }
-keep class io.kotzilla.data.json.** { *; }
-keep class io.kotzilla.sdk.** { *; }
The rule -keep class io.kotzilla.cloudinject.** { *; }
has been replaced by -keep class io.kotzilla.sdk.** { *; }
Also, if needed be sure to keep classes for ktor & kotlin:
-keepclassmembers class kotlinx.** { volatile <fields>; }
-keepclassmembers class io.ktor.** { volatile <fields>; }