I'm trying to integrate the Firebase C++ SDK in Unreal Engine 4 with gradle for android.
I have downloaded the latest version of the C++ SDK and I'm linking statically the SDK to my application.
However, when I run my application, I get an error :
Failed resolution of: Lcom/google/android/gms/common/api/Api$zzf
Full crash:
AndroidRuntime: Process: com.myapp.demo, PID: 9289
AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/common/api/Api$zzf;
AndroidRuntime: at com.google.android.gms.games.Games.<clinit>(Unknown Source:0)
AndroidRuntime: at com.epicgames.ue4.GameActivity.onCreate(GameActivity.java:3092)
AndroidRuntime: at android.app.Activity.performCreate(Activity.java:7955)
AndroidRuntime: at android.app.Activity.performCreate(Activity.java:7944)
AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1307)
AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3531)
AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3703)
AndroidRuntime: at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
AndroidRuntime: at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
AndroidRuntime: at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2216)
AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:107)
AndroidRuntime: at android.os.Looper.loop(Looper.java:237)
AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7948)
AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.common.api.Api$zzf" on path: DexPathList[[zip file "/data/app/com.myapp.demo-Ms1asO86NzXZiXzXdVeogg==/base.apk"],nativeLibraryDirectories=[/data/app/com.myapp.demo-Ms1asO86NzXZiXzXdVeogg==/lib/arm, /data/app/com.myapp.demo-Ms1asO86NzXZiXzXdVeogg==/base.apk!/lib/armeabi-v7a, /system/lib]]
AndroidRuntime: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:196)
AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
AndroidRuntime: at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
AndroidRuntime: ... 17 more
My build.gradle:
dependencies {
classpath 'com.google.gms:google-services:4.3.4'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'
}
dependencies {
platform('com.google.firebase:firebase-bom:25.12.0')
implementation 'com.google.android.gms:play-services-auth'
implementation 'com.google.android.gms:play-services-ads'
implementation 'com.google.firebase:firebase-auth'
implementation 'com.google.firebase:firebase-analytics'
implementation 'com.google.firebase:firebase-firestore'
implementation 'com.google.firebase:firebase-crashlytics'
}
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
I have tried the solution given at java.lang.NoClassDefFoundError: Failed resolution of: Lcom/Google/Android/gms/common/API/API$zzf; [duplicate] but it doesn't change anything.
Am I missing a dependency? Where's the problem?