【发布时间】:2019-09-27 15:46:02
【问题描述】:
我刚刚将 Flutter 升级到 1.5,将 Android Studio 升级到 3.4 和我的依赖项(提到 Firebase),我的应用程序不再在我的设备上运行。它正在安装并直接崩溃并出现以下错误:
java.lang.NoClassDefFoundError:解析失败:Lcom/google/firebase/auth/FirebaseAuth;
将 Flutter 降级到旧版本和降级 Android Studio 都不起作用。我个人的假设是,它与从 ProGuard 到 R8 的变化有关。
这是我当前的 proguard-rules.pro 文件的样子:
#Flutter Wrapper
-keep class io.flutter.app.** { *; }
-keep class io.flutter.plugin.** { *; }
-keep class io.flutter.util.** { *; }
-keep class io.flutter.view.** { *; }
-keep class io.flutter.** { *; }
-keep class io.flutter.plugins.** { *; }
-keep class com.google.firebase.** { *; }
我的依赖:
dependencies {
classpath 'com.android.tools.build:gradle:3.3.2'
classpath 'com.google.gms:google-services:4.2.0'
}
app/build.gradle:
minSdkVersion 21
targetSdkVersion 28
...
minifyEnabled true
useProguard true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
颤振医生:
[√] Flutter (Channel stable, v1.5.4-hotfix.2, on Microsoft Windows [Version 10.0.17763.475], locale de-AT)
[√] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[√] Android Studio (version 3.4)
[√] IntelliJ IDEA Ultimate Edition (version 2018.3)
[!] VS Code, 64-bit edition (version 1.33.1)
X Flutter extension not installed; install from
https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[√] Connected device (1 available)
pubspec.yaml
version: 1.0.0+1
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
image_picker:
path_provider:
google_maps_flutter:
firebase_core:
firebase_auth:
cloud_firestore:
image_cropper:
firebase_storage:
font_awesome_flutter:
google_sign_in:
flutter_facebook_login:
http:
location:
geoflutterfire:
firebase_messaging:
cached_network_image:
share:
camera:
flutter_staggered_grid_view:
【问题讨论】:
-
用flutter clean命令试过了吗?
-
是的,好几次。我什至在我的笔记本电脑上克隆了整个项目并遇到了同样的问题。
-
发布你的 pubspec.yaml
-
我编辑了我的帖子
-
// 将以下行添加到文件底部:apply plugin: 'com.google.gms.google-services'
标签: android gradle flutter firebase-authentication