关于上下文:我正在使用kotlin多平台与我的两个应用程序的后端进行通信,我也在尝试遵循context+ MVVM。我的多平台项目包含我的数据层(存储库和dtos),我的应用程序项目拥有表示和域层(VC、视图模型、用例)。
我试图在多平台项目中模拟我的存储库。
我的Kotlin多平台项目上有一个类(DTO),如下所示
@Serializable
data class LoginResponse(val data: LoginResponseBody){
@Serializable
data class LoginResponseBody(
var accessT
我试图建立一个简单的Kotlin多平台应用程序,调用互联网,以获取一些字符串从互联网与ktor。我从我编译的中获取了一些函数,它在安卓和iOS上都运行得很好。
然而,在我的示例应用程序中,它只能在安卓上运行,但在iOS上它会返回
kotlin.native.concurrent.InvalidMutabilityException: mutation attempt of frozen <object>@c422ffe8
下面是,下面是我的代码:
// src/commonMain/CoroutinePresenter.kt
open class CoroutinePresent
我正在实现一个纯Kotlin库,我将在开源许可证下发布该库。在我的库中,假设有class A,我想在其中重写equals()。我使用了Android Studio的自动生成器来做这件事,但它包含了对javaClass的引用 override fun equals(other: Any?): Boolean {
if (this === other) return true
if (javaClass != other?.javaClass) return false
other as A
...
} 在纯Kotlin库中使用此参考资料安全吗?如果有人使用我的库来攻击J
我习惯于在Swift中编写iOS应用程序,并使用UserDefaults进入安全状态。我如何使用Kotlin在Android中做类似的事情?
例如,下面是我如何在Swift中设置用户的数据和登录状态。
// Swift example; how is this possible with Kotlin?
UserDefaults.standard.set(value, forKey: MyKeys.userid.rawValue)
UserDefaults.standard.synchronize()
我试图为Kotlin多平台项目配置一个模板,在后端运行ktor,在前端配置react,使用jetbrains团队的Kotlin类型安全包装器。要在前端和后端之间共享代码,我需要使用gradle
build.gradle.kts
val kotlin_version: String by project
val ktor_version: String by project
val logback_version: String by project
val annotations_version: String by project
val kotlin_react_version: S
如何从Kotlin模块中正确读取Swift中可变数组中的数据?Kotlin共享模块:
data class Tape(private val capacity: Int) {
val reel: MutableList<Char>
...
}
Swift:
tape.reel.compactMap({ $0 as? Character } // leads to nothing in the array
我有一个包含以下模块的项目:
常见
普通js
公共jvm
后端
网站
我的想法是把我的共享( kotlin )代码(主要是模型)放在一起,它既可以使用kotlin驱动的后端,也可以使用最近推出的多平台支持在javascript驱动的webapp中使用。为此,我在Intellij中创建了一个新的多平台应用程序,并向其添加了后端和web模块。
公共模块中的示例类:
data class Show(
val id: Long,
val type: ShowType,
val title: String,
var description: S