With Kotlin native giving us the promise of cross platform development and native executables, is there an equivalent of the Java lib Retrofit for Kotlin Native? IOW is there a pure Kotlin networking library that makes creating http client code simple, and quick as Retrofit does for Java?
-
No, there is isn't any such library, yet. – Henry Dec 15 '17 at 16:09
5 Answers
I've just published an example project where I use ktor-client in a Kotlin project with both iOS and Android.
https://github.com/thoutbeckers/kotlin-mpp-example
( note: this example is now very out of date, but in the meanwhile ktor has progressed tremendously, and also have a multiplatform sample: https://ktor.io/learn/ )

- 2,599
- 22
- 24
-
2This does seem like the best solution currently. However, I would not say it is as simple and as few lines of code as Retrofit. Also there appears to be some difficulty with Serialization of certain types (root lists for example). – Patrick Jackson Oct 24 '18 at 15:06
-
At the moment wrapping some C library, like CURL is the best option. See https://github.com/JetBrains/kotlinconf-spinner/tree/master/kurl for example of how it could be done.
In this example we provide interoperability library matching CURL directly, and more Kotlin'ish wrapper, which calls (somewhat confusing) CURL APIs in more easy to use manner.

- 580
- 2
- 7
-
1While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. - [From Review](/review/low-quality-posts/18887451) – Abhishek kumar Feb 21 '18 at 10:51
-
Ktorfit looks like what you are looking for (a very young - but IMHO promising - project):
Ktorfit is a HTTP client/Kotlin Symbol Processor for Kotlin Multiplatform (Js, Jvm, Android, iOS, Linux) using KSP and Ktor clients inspired by Retrofit

- 543
- 6
- 14
I've made a library just for this purpose, actually I'm using it in some projects. https://github.com/eduayuso/konet.
On the other hand you have an alternative which inspired me to make this library, but it not exactly what you want: https://github.com/icerockdev/moko-network.

- 810
- 7
- 11
There is a nice and easy to use http networking library called "fuel" which is written in Kotlin. https://github.com/kittinunf/Fuel It also supports RxJava and coroutines.

- 1
- 3
-
1Fuel is not a Kotlin Multiplatform library, thus it doesn't support Kotlin Native – Volo Mar 26 '20 at 17:18