【问题标题】:Flutter doesn't run on Android after install Firebase安装 Firebase 后 Flutter 无法在 Android 上运行
【发布时间】:2019-08-27 21:01:40
【问题描述】:
如果我将 firebase_core 添加到我的颤振项目中,它不会在 Android 上运行。在 iOS 中没问题。
我有这个 gradle 错误。
在为 x86 构建的 Android SDK 上以调试模式启动 lib/main.dart...
正在初始化梯度...
解决依赖关系...
正在运行 Gradle 任务“assembleDebug”...
registerResGeneratingTask 已弃用,使用 registerGeneratedResFolders(FileCollection)
registerResGeneratingTask 已弃用,使用 registerGeneratedResFolders(FileCollection)
registerResGeneratingTask 已弃用,使用 registerGeneratedResFolders(FileCollection)
registerResGeneratingTask 已弃用,使用 registerGeneratedResFolders(FileCollection)
registerResGeneratingTask 已弃用,使用 registerGeneratedResFolders(FileCollection)
FAILURE:构建失败并出现异常。
* 什么地方出了错:
无法确定任务 ':firebase_core:compileDebugAidl' 的依赖关系。
> 无法解析配置“:firebase_core:debugCompileClasspath”的所有任务依赖项。
> 找不到 com.google.firebase:firebase-core:。
要求:
项目:firebase_core
依赖项:
日期格式:^1.0.6
扑:
sdk:颤动
url_launcher:^5.0.2
webview_flutter: ^0.3.5+3
#path: ./../webview_flutter
共享首选项:^0.5.1+2
本地身份验证:^0.4.0+1
http: ^0.12.0+1
xml: ^3.3.1
#flutter_auth_buttons:^0.3.1
flutter_masked_text: ^0.8.0
路径提供者:^0.5.0+1
base32:^1.0.1
#json_serializable:^2.0.3
获取它:^1.0.3
rxdart:^0.21.0
颤振_html:^0.9.6
sqflite:^1.1.3
存档:^2.0.8
百分比指标:^1.0.14
颤振状态栏颜色:^0.2.0
flutter_inappbrowser: ^1.1.1
scoped_model:^1.0.1
#Firebase
firebase_core:^0.3.1+1
firebase_analytics:^2.1.1
构建脚本 {
ext.kotlin_version = '1.2.71'
存储库{
谷歌()
中心()
}
依赖{
类路径“org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version”
类路径 'com.google.gms:google-services:3.2.1'
类路径'com.android.tools.build:gradle:3.2.1'
}
}
所有项目{
存储库{
谷歌()
中心()
}
}
rootProject.buildDir = '../build'
子项目{
project.buildDir = "${rootProject.buildDir}/${project.name}"
}
子项目{
project.evaluationDependsOn(':app')
}
任务清理(类型:删除){
删除 rootProject.buildDir
}
子项目{
project.configurations.all {
resolutionStrategy.eachDependency { 详细信息 ->
if (details.requested.group == 'androidx.fragment' &&
!details.requested.name.contains('androidx')) {
details.useVersion "1.0.0"
}
}
}
}
> def localProperties = new Properties() def localPropertiesFile =
> rootProject.file('local.properties') if (localPropertiesFile.exists())
> {
> localPropertiesFile.withReader('UTF-8') { 阅读器 ->
> localProperties.load(读者)
> } }
>
> def flutterRoot = localProperties.getProperty('flutter.sdk') 如果
> (flutterRoot == null) {
> throw new GradleException("未找到 Flutter SDK。在 local.properties 文件中使用 flutter.sdk 定义位置。") }
>
> def flutterVersionCode =
> localProperties.getProperty('flutter.versionCode') 如果
> (flutterVersionCode == null) {
> 颤振版本代码 = '1' }
>
> def 颤振版本名称 =
> localProperties.getProperty('flutter.versionName') 如果
> (flutterVersionName == null) {
> 颤振版本名称 = '1.0' }
>
> 应用插件:'com.android.application' 应用插件:'kotlin-android'
> 申请:
> “$flutterRoot/packages/flutter_tools/gradle/flutter.gradle”
>
> 安卓{
> compileSdkVersion 28
>
> 源集 {
> main.java.srcDirs += 'src/main/kotlin'
> }
>
> lintOptions {
> 禁用“无效包”
> }
>
> 默认配置 {
> // TODO:指定您自己的唯一应用程序 ID (https://developer.android.com/studio/build/application-id.html)。
> 应用程序 ID“xxx”
> minSdkVersion 21
> targetSdkVersion 28
> 版本代码flutterVersionCode.toInteger()
> 版本名称颤振版本名称
> //testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
> }
>
> 构建类型 {
> 释放{
> // TODO:为发布构建添加您自己的签名配置。
> // 现在使用调试密钥签名,所以 `flutter run --release` 可以工作。
> 签名配置签名配置.debug
> }
> } }
>
> 颤动{
> 来源'../..' }
>
> 依赖{
> 实施“org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version”
> testImplementation 'junit:junit:4.12'
> //androidTestImplementation 'com.android.support.test:runner:1.0.2'
> //androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
>
> 实施 'com.google.firebase:firebase-core:16.0.8' }
>
> 应用插件:'com.google.gms.google-services'
那么我能做些什么来解决这个问题呢?正如我所说,它适用于 iOS,我可以在 Firebase 控制台中看到 Analytics 仪表板。
更多信息...如果我在 Android Studio 中打开 Android 模块,它会返回此 gradle 错误:
【问题讨论】:
标签:
firebase
flutter
flutter-dependencies