找不到插件项目:firebase_core_web
我尝试将Android项目连接到Firebase,但由于在pubsec.yaml中添加了以下内容,因此出现此错误:
firebase_auth: ^0.16.0cloud_firestore: ^0.13.5
当我摇晃运行并且不起作用时
Plugin project :firebase_core_web not found. Please update settings.gradle.Plugin project :firebase_auth_web not found. Please update settings.gradle.
Plugin project :cloud_firestore_web not found. Please update settings.gradle.
有什么解决办法吗
回答:
在中android/app/build.gradle
,更新以下内容:
android { // ...
defaultConfig {
// ...
minSdkVersion 16
}
}
变成:
android { // ...
defaultConfig {
// ...
minSdkVersion 23
}
}
minSdkVersion 23
在扑扑中使用Firebase时需要使用。
从文档:
默认情况下,Flutter支持Android SDK v16(Jelly Bean,2012年发布),但是multidex并不真正适用于Jelly
Bean(尽管有可能)。配置Jelly
Bean正常工作超出了此代码实验室的范围,因此我们将最低目标SDK版本从v16更改为v21(Lollipop,2014年发布)。
要更改最低目标SDK版本:
- 打开android / app / build.gradle,然后找到显示minSdkVersion 16的行。
- 将该行更改为minSdkVersion 21。
- 保存文件。
升级后,它应该可以正常工作。
。供参考,这是您的settings.gradle
文件应为的样子(默认文件无更改):
include ':app'def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
def plugins = new Properties()
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {
pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) }
}
plugins.each { name, path ->
def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
include ":$name"
project(":$name").projectDir = pluginDirectory
}
https://github.com/PeterHdd/Firebase-Storage-
Tutorial/blob/master/android/settings.gradle
的settings.gradle
:
Gradle
是用于android项目的构建工具,就像ant
或一样maven
,它使用groovy语言或kotlin进行脚本编写。在这种情况下,以上代码是使用编写的,groovy
并且由于groovy
是一种jvm
语言,因此它可以使用Java
库。因此,基本上include
':app'可以将项目添加到构建中(通常,您可以省略方法的括号)。
这行:
def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
正在获取您在计算机中创建的flutter项目的路径。以供参考:
https://docs.gradle.org/current/javadoc/org/gradle/api/initialization/ProjectDescriptor.html#getProjectDir--
https://docs.oracle.com/javase/8/docs/api/java/io /File.html#toPath–
https://docs.oracle.com/javase/7/docs/api/java/util/Properties.html
这行:
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
将.flutter-plugins
在flutter项目的根目录下创建一个名为的空文件。然后plugins.each{ name, path
->这基本上是一个迭代,它将插件名称和插件路径添加到文件中.flutter_plugins
,如果 ,则会
.flutter-plugins
文件:
# This is a generated file; do not edit or check into version control.cloud_firestore=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/cloud_firestore-0.13.6/
cloud_firestore_web=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/cloud_firestore_web-0.1.1+2/
firebase_auth=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_auth-0.16.1/
firebase_auth_web=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_auth_web-0.1.2/
firebase_core=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_core-0.4.4+3/
firebase_core_web=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_core_web-0.1.1+2/
firebase_database=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_database-3.1.5/
firebase_storage=/Users/<users>/.pub-cache/hosted/pub.dartlang.org/firebase_storage-3.1.5/
以上是 找不到插件项目:firebase_core_web 的全部内容, 来源链接: utcz.com/qa/429856.html