Android 从项目目录| Kotlin Multiplatform Mobile | KMM读取本地文件
我正在尝试读取本地项目中保存的Android 从项目目录| Kotlin Multiplatform Mobile | KMM读取本地文件,android,objective-c,swift,kotlin,kotlin-multiplatform,Android,Objective C,Swift,Kotlin,Kotlin Multiplatform,我正在尝试读取本地项目中保存的JSON文件,并希望使用Kotlin Multiplatform Mobile获取和读取该文件,以便与Android和iOS共享 以下是我正在做的工作: 总而言之: package com.example.readJSON.shared import kotlinx.serialization.Serializable @Serializable data class DataRequest( val dataRegimenRequest: List&l
JSON
文件,并希望使用Kotlin Multiplatform Mobile
获取和读取该文件,以便与Android和iOS共享
以下是我正在做的工作:
总而言之:
package com.example.readJSON.shared
import kotlinx.serialization.Serializable
@Serializable
data class DataRequest(
val dataRegimenRequest: List<DataRegimenRequest>?
)
expect class FileResource(location: String){
val json: String?
}
总而言之:
package com.example.readJSON.shared
actual class FileResource actual constructor(location: String) {
actual val json: String? = null //TODO: write a code to read from local file
}
有人能帮我吗?我如何获取iOS的本地JSON
文件
对于Android,我能够读取本地的
JSON
文件。您可能需要编写一些gradle来将文件复制到您的iOS应用程序源,然后通过读取捆绑包中的iOS资源文件来加载它。这有点难理解,但我们引入了一个快速函数来处理它。你也可以用iOS Kotlin编写代码
您可以直接将文件添加到Xcode,而不需要在Gradle中复制它。在Xcode中,右键单击源文件夹并选择“将文件添加到”,然后将其指向该文件。如果您的所有源代码都在一个repo中,那么您应该能够使用Xcode的相对路径指向该文件,并在运行时加载它
对于Android,您可能希望将该文件放入
资源中,而不是使用类加载器加载,但这是另一种讨论。您可能需要编写一些渐变来将该文件复制到iOS应用程序源中,然后通过从包中读取iOS资源文件来加载它。这有点难理解,但我们引入了一个快速函数来处理它。你也可以用iOS Kotlin编写代码
您可以直接将文件添加到Xcode,而不需要在Gradle中复制它。在Xcode中,右键单击源文件夹并选择“将文件添加到”,然后将其指向该文件。如果您的所有源代码都在一个repo中,那么您应该能够使用Xcode的相对路径指向该文件,并在运行时加载它
对于Android,您可能希望将该文件放入assets
中,而不是使用类加载器加载它,但这是一个不同的讨论
package com.example.readJSON.shared
actual class FileResource actual constructor(location: String) {
actual val json: String? = null //TODO: write a code to read from local file
}