segmentio / analytics-kotlin

The hassle-free way to add Segment analytics to your Kotlin app (Android/JVM).
MIT License
45 stars 27 forks source link

Kotlin Multiplatform support #46

Open scottkruse opened 3 years ago

scottkruse commented 3 years ago

Is your feature request related to a problem? Please describe. Is there plans for enabling Kotlin for multiplatform support? One current pain point is standardizing data flow coming from client apps. Looking at the source it looks well equipped for a Multiplatform future (pure Kotlin, coroutines, kotlinx serialization, etc)

Describe the solution you'd like Id like to share higher level architecture for data schemas / middlewares between clients.

Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

Additional context Add any other context or screenshots about the feature request here.

prayansh commented 3 years ago

Hi! @scottkruse. We do not have any current plans to support kotlin multi-platform in the near future. This could change if we get more customer demand for this feature.

In order to understand the scope more, which platforms are you planning to work with?

scottkruse commented 3 years ago

Android, Native, JS targets

Reedyuk commented 2 years ago

I would also like to have this, but mainly for:

Android & Native(iOS)

Reedyuk commented 2 years ago

@scottkruse - I have created a KMP wrapper which should work for you. https://github.com/MyUNiDAYS/Segmenkt

eirikvaa commented 1 year ago

If this could support Android and Native (iOS) also, so mainly the KMM approach, that would be fantastic!

Shabinder commented 1 year ago

+1 for this.

PepeGuerrero commented 1 year ago

+1 here too, we'd be interested in this.

yosi199 commented 1 year ago

Joining in on this - Android and iOS would be great. Actually got here while looking for such library for segment

Reedyuk commented 1 year ago

@yosi199 - I am using the library I posted above, it's in production.

yosi199 commented 1 year ago

@yosi199 - I am using the library I posted above, it's in production.

Cant get it to compile. getting this:

Could not determine the dependencies of task ':analytica:transformAppleMainCInteropDependenciesMetadataForIde'.

Could not resolve all dependencies for configuration ':analytica:appleMainResolvableDependenciesMetadata'. The project declares repositories, effectively ignoring the repositories you have declared in the settings. You can figure out how project repositories are declared by configuring your build to fail on project repositories. See https://docs.gradle.org/8.0/userguide/declaring_repositories.html#sub:fail_build_on_project_repositories for details. Could not find com.myunidays:segmenkt:0.0.9. Required by: project :analytica

Possible solution:

Reedyuk commented 1 year ago

@yosi199 - I am using the library I posted above, it's in production.

Cant get it to compile. getting this:

Could not determine the dependencies of task ':analytica:transformAppleMainCInteropDependenciesMetadataForIde'.

Could not resolve all dependencies for configuration ':analytica:appleMainResolvableDependenciesMetadata'.

The project declares repositories, effectively ignoring the repositories you have declared in the settings.

You can figure out how project repositories are declared by configuring your build to fail on project repositories.

See https://docs.gradle.org/8.0/userguide/declaring_repositories.html#sub:fail_build_on_project_repositories for details.

Could not find com.myunidays:segmenkt:0.0.9.

 Required by:

     project :analytica

Possible solution:

Can you post this on the project and not here as it's an unofficial library

carlos-prezzee commented 6 months ago

We have created a custom wrapper similar to https://github.com/MyUNiDAYS/Segmenkt and we integrate segment on the android and iOS side only

mboudraa commented 3 weeks ago

I'd like this as well