这是我对 Kotlin Multiplatform 的第一次实验,似乎我还没有完全掌握一些东西。
我的后端通过 UDP 多播中的套接字发送通知消息(我可能需要在每个平台上实现这部分,因为我认为 Kotlin 不会为我做这件事)。然后我想将此消息(以字节数组的形式)传递给我的公共模块。该模块负责解析消息并将结果返回给平台。
只是为了简化我的工作,我希望每个平台都返回 ByteArray 的test
消息。
这是我的common.kt
文件:
package org.kotlin.mpp.mobile
expect fun receivedEASNotification(): ByteArray
fun parseEASNotification(msg: ByteArray) {
// Use receivedEASNotification()
}
这是安卓文件:
package org.kotlin.mpp.mobile
actual fun receivedEASNotification(): ByteArray {
return "test".toByteArray(Charsets.UTF_8)
}
我的问题是iOS
部分原因。我不知道如何将字符串转换为 ByteArray。有toCharArray()
功能但没有toByteArray()
。此外,还有toByte()
功能。
actual fun receivedEASNotification(): ByteArray {
return "test".toByteArray() // There is no such a function for iOS.
}