我试图构建一个Kotlin多平台应用程序,在React Native无法理解的错误消息严重受挫后。
我已经能够遵循Kotlin指南,并且对这一过程感到非常满意。但是现在,我试图获取我在firestore中的数据,只是重新调整一个基本项目。
编辑:我后来继续前进,发现dev.gitlive做了一个firestoreKotlin的第一个SDK:https://github.com/GitLiveApp/firebase-kotlin-sdk
但是我不能理解或者找到一个关于如何实际使用这个库的指南。
我的问题是,我已经添加了firestore作为一个依赖,但我似乎不能正确导入firebase实际使用它。
我的build.gradle.kts包含:
sourceSets {
val commonMain by getting {
dependencies {
implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.4.0")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4")
implementation("io.ktor:ktor-client-core:$ktorVersion")
implementation("io.ktor:ktor-client-content-negotiation:$ktorVersion")
implementation("io.ktor:ktor-serialization-kotlinx-json:$ktorVersion")
implementation("org.jetbrains.kotlin:kotlin-stdlib-common")
implementation("com.google.firebase:firebase-bom:28.4.1")
implementation("com.google.firebase:firebase-firestore-ktx:21.4.0")
}
}
字符串
当把它导入到我的commonMain代码中时,我可以这样做:
import com.google.firebase.*
import com.google.firebase.ktx.*
型
但我做不到:import com.google.firebase.Firebase
import com.google.firebase.ktx.Firebase
型
因为firebase部分将以红色突出显示,就好像它是一个不正确的导入。即使去掉它,只执行import all命令,也找不到firebase功能/类。
Google Docs forKotlin+KTX:
dependencies {
// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:31.2.3')
// Declare the dependency for the Cloud Firestore library
// When using the BoM, you don't specify versions in Firebase library dependencies
implementation 'com.google.firebase:firebase-firestore-ktx'
}
型
也不起作用,因为它抱怨说:
Could not find com.google.firebase:firebase-firestore-ktx:.
Required by:
project :shared
型
任何帮助/指导将非常感谢。
1条答案
按热度按时间qyswt5oh1#
Firebase本身还不支持Kotlin多平台。这就是为什么将其添加到commonMain依赖项不起作用的原因。如果你想在这两个平台上都使用Firebase,你必须自己动手,把expect/actual和你的目标平台拼接起来。Gitlive Firebase为你做到了这一点,这就是Gitlive在你的项目中工作的原因。