我在普通的gradle中添加了这行。
implementation ("com.google.android.gms:play-services-location:17.0.0")
我正在尝试在FusedLocationProviderClient
的类中实例化androidMain
。但它说
unresolved symbol
。知道为什么吗?
最佳答案
您试图在此处完成的工作不可能与您在构建该结构时完全相同。
通常,您不能具有特定于平台的实现。通常,您可以添加与平台无关的代码。 FusedLocationProviderClient
是Android特定的。因此,您拥有的依赖项
implementation ("com.google.android.gms:play-services-location:17.0.0")
必须放置在android的dependencies块中。而且,如果您需要特定于android的依赖项,则在gradle文件中也将需要android SDK和
android {}
块。像这样:android {
compileSdkVersion(29)
defaultConfig {
minSdkVersion(21)
targetSdkVersion(29)
}
}
然后在
kotlin{}
块中,您可以执行以下操作:kotlin {
...
sourceSets {
val androidMain by getting {
dependencies {
...
implementation ("com.google.android.gms:play-services-location:17.0.0")
...
}
}
...
}
另外,请注意,您可能需要在
AndroidManifest.xml
中使用src/main
来定义包装。就像是<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.packageName" />
希望能有所帮助。
关于android - Kotlin/Native-> androidMain->无法解析的符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58239119/