I tried androidx flag in gradle.properties below but not working either. Also Android Studio “Refactor > Migrate to AndroidX” is not working either as it says “No usages found in the project”:
01-03 17:55:19.025 31433 31433 E AndroidRuntime: FATAL EXCEPTION: main
01-03 17:55:19.025 31433 31433 E AndroidRuntime: Process: org.cocos2d.helloworld, PID: 31433
01-03 17:55:19.025 31433 31433 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/core/os/UserManagerCompat;
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at com.google.firebase.FirebaseApp.initializeAllApis(com.google.firebase:firebase-common@@19.0.0:548)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at com.google.firebase.FirebaseApp.initializeApp(com.google.firebase:firebase-common@@19.0.0:300)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at com.google.firebase.FirebaseApp.initializeApp(com.google.firebase:firebase-common@@19.0.0:264)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at com.google.firebase.FirebaseApp.initializeApp(com.google.firebase:firebase-common@@19.0.0:249)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at com.google.firebase.provider.FirebaseInitProvider.onCreate(com.google.firebase:firebase-common@@19.0.0:51)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.content.ContentProvider.attachInfo(ContentProvider.java:1940)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.content.ContentProvider.attachInfo(ContentProvider.java:1915)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at com.google.firebase.provider.FirebaseInitProvider.attachInfo(com.google.firebase:firebase-common@@19.0.0:45)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.app.ActivityThread.installProvider(ActivityThread.java:6742)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.app.ActivityThread.installContentProviders(ActivityThread.java:6289)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6204)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.app.ActivityThread.access$1200(ActivityThread.java:237)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1785)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:106)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.os.Looper.loop(Looper.java:214)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7050)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)
01-03 17:55:19.025 31433 31433 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: Didn't find class "androidx.core.os.UserManagerCompat" on path: DexPathList[[zip file "/data/app/org.cocos2d.helloworld-0lxHmeE2eIIblt4y_gpsSA==/base.apk"],nativeLibraryDirectories=[/data/app/org.cocos2d.helloworld-0lxHmeE2eIIblt4y_gpsSA==/lib/arm, /data/app/org.cocos2d.helloworld-0lxHmeE2eIIblt4y_gpsSA==/base.apk!/lib/armeabi-v7a, /system/lib, /system/vendor/lib]]
Actually looking at Release Notes | Google APIs for Android | Google Developers
it shows that since firebase v17.0.0, AndroidX dependencies is required. So, is it possible that it is related to the version of sdkbox I am using e.g. v1.4.1.0 and that plugin installation is not including AndroidX migration out of the box anymore? Which version of sdkbox are you using?
The latest update to Google Play services and Firebase includes the following changes:
Migration from Android Support Libraries to Jetpack (AndroidX) Libraries. Libraries will not work unless you make the following changes in your app:
Upgrade com.android.tools.build:gradle to v3.2.1 or later.
Upgrade compileSdkVersion to 28 or later.
Update your app to use Jetpack (AndroidX); follow the instructions in Migrating to AndroidX.
it’s strange
I clone sdkbox-sample-ccc200/firebase_with_creator_2.2.1 again, and then compile and run it directly with AS, work fine.
your error still can’t find androidx.core.*, but from the output of ./gradlewsdkbox-sample-ccc200: dependencies , we can see that androidx.core is already dependent.
androidx has been proguard?
sdkbox-sample-ccc200/firebase_with_creator_2.2.1 use sdkbox firebase 2.7.1.0
So, I normally use Cocos Creator to make build and run apk on mobile. Cocos creator use whatever config is defined in gradle config files.
When I used Android Studio to make build and run apk, it initially failed too with same crash log. This is because I did not upgrade gradle version when prompted by Android Studio.
Then I updated com.android.tools.build:gradle from 3.2.0 to 3.2.1 in build.gradle, and did another build and it then ran successfully. I did not have to configure AndroidX migration for some reasons.