Android FirebaseAuth-兼容问题(java.lang.NoSuchMethodError:没有虚拟方法zzUV())
我有一个android项目在启动时不断崩溃,因为我添加了: firebase认证 我所做的:Android FirebaseAuth-兼容问题(java.lang.NoSuchMethodError:没有虚拟方法zzUV()),android,firebase,gradle,firebase-authentication,nosuchmethoderror,Android,Firebase,Gradle,Firebase Authentication,Nosuchmethoderror,我有一个android项目在启动时不断崩溃,因为我添加了: firebase认证 我所做的: 将google-services.json添加到应用程序级文件夹 在build.gradle(顶级)中添加了classpath'com.google.gms:google services:3.0.0' 这是我的build.gradle内容(应用程序级) 下面是: android { compileSdkVersion 25 buildToolsVersion "25.0.2" defaultConfi
classpath'com.google.gms:google services:3.0.0'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "xxxx.xxx.xxx"
minSdkVersion 21
targetSdkVersion 23
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
jackOptions {
enabled true
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
buildTypes {
debug {
debuggable true
}
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.1.0'
compile 'com.android.support:design:25.1.0'
compile 'com.android.support:support-v4:25.1.0'
compile 'com.google.android.gms:play-services-base:10.2.1'
compile 'com.google.android.gms:play-services-maps:10.2.1'
compile 'com.google.android.gms:play-services-location:10.2.1'
compile 'com.google.firebase:firebase-auth:10.2.1'
compile 'com.android.support:recyclerview-v7:25.1.0'
compile 'com.android.support:cardview-v7:25.1.0'
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'
以下是stacktrace崩溃时的状态:
FATAL EXCEPTION: main Process: xxx.xxxx, PID: 8425
java.lang.NoSuchMethodError: No virtual method zzUV()Ljava/lang/String; in
class Lcom/google/firebase/FirebaseApp; or its super classes (declaration of
'com.google.firebase.FirebaseApp' appears in /data/app/xxx.xxx-2/base.apk)
at com.google.firebase.auth.FirebaseAuth.zzd(Unknown Source)
at com.google.firebase.auth.FirebaseAuth.zzc(Unknown Source)
at com.google.firebase.auth.FirebaseAuth.getInstance(Unknown Source)
at xxx.xxxx.LoginActivity.onCreate(LoginActivity.java:82)
at android.app.Activity.performCreate(Activity.java:6679)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2618)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2726)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1477)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6119)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)
尝试使用较低版本的auth-like
compile 'com.google.firebase:firebase-auth:9.8.0'
或者类似于
9.9.0
etc在我的例子中,问题是我的google play service sdk没有安装在android studio中。安装后,我清理了项目,一切正常。添加firebase core库编译'com.google.firebase:firebase core:10.2.1'
崩溃是在模拟器中还是在设备上发生的?非常确定emulator自带了自己的Play版本,您需要使用与Firebase Auth版本匹配的版本。同时请记住,Proguard需要一些特殊的配置。请参阅中的“可选:配置ProGuard”您是否在Firebase身份验证部分启用了OAuth providers服务?我发现了问题lol,这是我的错,我没有在我的新电脑上安装google play services sdk。安装后,我“清理了项目”,一切都很好。呵呵……无论如何……我们也对stackoverflow上瘾了!:P