Jon*_*hon 54 dart flutter google-cloud-firestore
尝试在我的项目中使用 Firestore。我的项目是一个全新的项目,但在我的设备上运行应用程序时出现问题,但没有出现错误: 任务“:app:mergeDexDebug”的执行失败。
我的应用正在使用 AndroidX。我已经添加了我的 google-services.json 文件,按照步骤等操作。
yaml文件:
dependencies:
cloud_firestore: ^0.13.3
Run Code Online (Sandbox Code Playgroud)
android/build.gradle:
com.google.gms:google-services:4.3.3
Run Code Online (Sandbox Code Playgroud)
完整错误:
FAILURE:构建失败,出现异常。
出了什么问题:任务 ':app:mergeDexDebug' 执行失败。执行 com.android.build.gradle.internal.tasks.Workers$ActionFacade com.android.builder.dexing.DexArchiveMergerException 时发生故障:合并 dex 档案时出错:.dex 文件中的方法引用数不能超过 64K。在https://developer.android.com/tools/building/multidex.html了解如何解决此问题
lor*_*dex 166
问题在于多索引构建器。实际上,当您在 yaml 文件中导入了大量无法放入单个 .dex 构建的包时,通常会发生这种情况,因此您必须启用 multidex。
转到 android/app/build.gradle 并添加以下代码行:
dependencies {
implementation 'com.android.support:multidex:1.0.3' //enter the latest version
}
android {
defaultConfig {
multiDexEnabled true
}
}
Run Code Online (Sandbox Code Playgroud)
Jon*_*hon 16
修复了问题,但不明白为什么。当我认为 Firestore 正在使用 AndroidX 时,为什么我需要启用 multiDex?
无论如何,修复。将multiDexEnabled true添加到您的app/build.gradle
defaultConfig {
// TODO: Specify your own unique Application ID
(https://developer.android.com/studio/build/application-id.html).
applicationId "com.example.poll"
minSdkVersion 16
targetSdkVersion 28
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
//This line here...
multiDexEnabled true
}
Run Code Online (Sandbox Code Playgroud)
Viv*_*vek 12
我刚刚遇到了这个错误,事实证明它可以轻松修复。当然,关于这个的其他答案真的很棒,它告诉你如何解决它。但是,我想知道为什么会发生这种情况。事实证明,这来自于minSdkVersion使用过的。如果设置为20或更低,您需要配置您的应用程序以支持 multiDex。
defaultConfig {
applicationId "com.inspire.aaym"
minSdkVersion 21
targetSdkVersion 30
}
Run Code Online (Sandbox Code Playgroud)
因此,如果您的应用不打算在 5.0 之前的 Android 版本中使用,则将minSdkVersion数字设置为21可以轻松解决此问题。如果没有,请按照解决方法启用 mutiDex 支持。
从官方文档中阅读更多内容:https : //developer.android.com/studio/build/multidex#mdex-gradle
您可以遵循此处提到的准则
https://developer.android.com/studio/build/multidex
或者缩短故事,直接去回答
找到android/app/build.gradle文件并添加以下代码行:
dependencies {
compile 'com.android.support:multidex:1.0.3'
//find latest version from here https://developer.android.com/studio/build/multidex
}
android {
defaultConfig {
multiDexEnabled true
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
56193 次 |
| 最近记录: |