-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: setup basic barebone #2
Conversation
main/java/com/amplitude/kotlin/platform/plugins/ContextPlugin.kt
Outdated
Show resolved
Hide resolved
import com.amplitude.kotlin.platform.Timeline | ||
import com.amplitude.kotlin.platform.plugins.AmplitudeDestination | ||
import com.amplitude.kotlin.platform.plugins.ContextPlugin | ||
import kotlinx.coroutines.* |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This might be another import issue in Android. Haven't tried before but seems Android has in-built coroutines. Not sure if we need to handle that special like JSONObject.
https://kotlin.github.io/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/-coroutine-scope/
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, we need to watch and check for this as well. For other example, they seems just specify the version there. gradle normally picks the higher one if not setting rule specifically.
|
||
object Constants { | ||
const val SDK_LIBRARY = "amplitude-kotlin" | ||
const val SDK_VERSION = "0.0.1" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We shouldn't define it here. It should be inside the gradle and the build pipeline should take care of it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I agree, ideally we only need one place to handle the SDK version. I put the version here so we can inject the version in our event easily. Not sure if there is other good ways, the solution I found now is to generate a file like version.properties
and let our code load the file for this information. I am more inclined to do that when we get to release step though. Will create a ticket so I won't forget.
return payload | ||
} | ||
|
||
fun groupIdentify(payload: GroupIdentifyEvent): GroupIdentifyEvent? { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should setGroup be here as well, or is the idea that setGroup will go through groupIdentify?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
setGroup will create an IdentifyEvent and covered in identify method. That's also what we have now. We can revisit this when we try to support the group
method.
# 1.0.0 (2022-06-28) ### Bug Fixes * fix android aar issue ([#32](#32)) ([69f5fe7](69f5fe7)) * fix group call ([#42](#42)) ([f84d143](f84d143)) ### Features * add amplitude destination plugin draft ([#3](#3)) ([7ee9408](7ee9408)) * add android context plugin ([#14](#14)) ([25b6da3](25b6da3)) * add basic test action and issue templates ([#9](#9)) ([e72c608](e72c608)) * add button to kotlin example to send custom event ([#41](#41)) ([5c1e573](5c1e573)) * add configuration java support ([#35](#35)) ([a4e0801](a4e0801)) * add error handling and retry ([#13](#13)) ([689b114](689b114)) * add eu and batch support ([#17](#17)) ([6402b2a](6402b2a)) * add event bridge module ([#12](#12)) ([49229ac](49229ac)) * add event id support ([#25](#25)) ([94aaa6b](94aaa6b)) * add github action about docs and release ([#19](#19)) ([3aa868e](3aa868e)) * add identify support ([#18](#18)) ([2f86adc](2f86adc)) * add identity module and file storage ([#8](#8)) ([8b7bada](8b7bada)) * add Java android example ([#24](#24)) ([2670a2b](2670a2b)) * add Kotlin android sample ([#23](#23)) ([3b948c8](3b948c8)) * add parner_id ([#16](#16)) ([5e46cb9](5e46cb9)) * add plan in configuration and export ([#34](#34)) ([d84a84e](d84a84e)) * add plan versionId support ([#22](#22)) ([ae84619](ae84619)) * add revenue helper class ([#6](#6)) ([341fcf1](341fcf1)) * add unit tests for common jvm module ([#29](#29)) ([dcc0e9d](dcc0e9d)) * add unit tests in core module ([#30](#30)) ([4283148](4283148)) * add unit tests in event bridge module ([#28](#28)) ([8d63c28](8d63c28)) * add unit tests in id module ([#27](#27)) ([dc78bc6](dc78bc6)) * android local sync update ([#20](#20)) ([e25ecd4](e25ecd4)) * enable to pass the event options for all track call ([#36](#36)) ([8dd1ab6](8dd1ab6)) * expose more api for support ([#33](#33)) ([312fd85](312fd85)) * make configuration open ([#38](#38)) ([d0dfb15](d0dfb15)) * remove json object from public interface ([#26](#26)) ([0840b5d](0840b5d)) * set the client userId and deviceId in identify call ([#37](#37)) ([2c8b3f1](2c8b3f1)) * set up android module bare bone ([#7](#7)) ([a8a8dc9](a8a8dc9)) * Set up jvm example ([#4](#4)) ([ae825d6](ae825d6)) * setup basic barebone ([#2](#2)) ([8e4b635](8e4b635)) * setup basic doc and workflow ([#1](#1)) ([31bd223](31bd223)) * setup common modules ([#11](#11)) ([4a4ff66](4a4ff66)) * update android storage ([#15](#15)) ([56c1d6a](56c1d6a)) * update library name ([#21](#21)) ([309976d](309976d))
🎉 This PR is included in version 1.0.0 🎉 The release is available on:
Your semantic-release bot 📦🚀 |
Summary
Setup basic barebones, lots of functions are placeholders now
More details will came in later
Checklist