我正在使用Kotlin为多平台编写一个实验项目。我通过使用RXjava和改造写了一些常见的逻辑。有三个文件夹Kotlin [commonMain] Kotlin [androidMain] Kotlin [iosMain]
该代码在Kotlin [androidMain]文件夹中正常工作。当我搬进Kotlin [commonMain]时,Class无法重新启动改造和RX库。
是因为Kotlin多平台无法编译Rx和改造库吗?
或者我做错了什么。
请有人可以向我解释。
问候,
**import okhttp3. unalbe to resolve***
**import okhttp3.Response unable to resolve**
class AuthorizationInterceptor(private val authorization: Authorization) : Interceptor{
override fun intercept(chain: Interceptor.Chain): Response {
var accessToken = authorization.getCachedToken()
val request: Request =
chain.request().newBuilder().addHeader("Authorization", "%s , %s , %s".format(accessToken))
.build()
return chain.proceed(request)
}
}
那是正确的。目前还没有kazlin native的retrofit
变种。 ktor-client是一个非常好的替补。
This is a very nice article关于kotlin多平台项目并展示ktor-client
。
至于RxJava
,顾名思义,该框架仅针对Java(以及一些基于JVM的语言)实现。对于像kazxswpoi这样的kotlin-native正在进行相当大的努力,但是还没有(广泛接受的)生产就绪。