在你的android/app/build.gradle
人中,更新以下内容:
android {
// ...
defaultConfig {
// ...
minSdkVersion 16
}
}
进入:
android {
// ...
defaultConfig {
// ...
minSdkVersion 23
}
}
Note:
在Flutter 中使用火基时需要使用minSdkVersion 23
.
从docs:
默认情况下,Flatter支持Android SDK v16(Jelly Bean,2012年发布),但multidex并不真正适用于Jelly Bean(尽管这是可能的).配置Jelly Bean使其工作超出了本代码实验室的范围,因此我们将把最低目标SDK版本从v16更改为v21(棒棒糖,2014年发布).
要更改最低目标SDK版本,请执行以下操作:
- 打开android/app/build.gradle,然后找到显示minSdkVersion16的行.
- 将该行更改为minSdkVersion 21.
- 保存文件.
升级后,应该可以正常工作.The 100 file is provided to you when you create any new flutter project.作为参考,您的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-Flutter-tutorials/blob/master/firebase_storage_tutorial/android/settings.gradle个
第Explanation页,共settings.gradle
页:
Gradle
是一个用于android项目的构建工具,就像ant
或maven
一样,它使用groovy语言或kotlin编写脚本.在这种情况下,上面的代码是使用groovy
编写的,因为groovy
是jvm
语言,所以它能够使用Java
个库.所以基本上include ':app'
会将项目添加到构建中(在groovy中,可以省略方法的括号).
这一行:
def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
正在获取您在计算机中创建的Flutter 项目的路径.供参考:
https://docs.gradle.org/current/javadoc/org/gradle/api/initialization/ProjectDescriptor.html#getProjectDir--
这一行:
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
将在Flutter 项目的根目录下创建一个名为.flutter-plugins
的空文件.则plugins.each{ name, path ->
这基本上是将插件名称和插件的路径添加到文件.flutter_plugins
的迭代,如果plugin is not found in that file you get the error in this question
.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/