Open rico345100 opened 2 months ago
Other unity packages used in this project are:
According to EDM4U dev, “com.google.android.play:core:1.10.3” is deprecated, so I need to update it.
https://github.com/googlesamples/unity-jar-resolver/issues/707
This is build.gradle found after build aab:
apply plugin: 'com.android.library'
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
// Android Resolver Dependencies Start
implementation 'com.google.android.play:core:1.10.3' // Assets/GooglePlayPlugins/com.google.play.core/Editor/PlayCoreDependencies.xml:3
implementation 'com.google.games:gpgs-plugin-support:0.10.14' // Assets/GooglePlayGames/Editor/GooglePlayGamesPluginDependencies.xml:11
// Android Resolver Dependencies End
implementation(name: 'UnityAds', ext:'aar')
implementation(name: 'common', ext:'aar')
implementation(name: 'AndroidNative', ext:'aar')
implementation project('GooglePlayGamesManifest.androidlib')
}
// Android Resolver Exclusions Start
android {
packagingOptions {
exclude ('/lib/armeabi/*' + '*')
exclude ('/lib/mips/*' + '*')
exclude ('/lib/mips64/*' + '*')
exclude ('/lib/x86/*' + '*')
exclude ('/lib/x86_64/*' + '*')
}
}
// Android Resolver Exclusions End
android {
namespace "com.unity3d.player"
ndkPath "C:/Program Files/Unity/Hub/Editor/2022.3.45f1/Editor/Data/PlaybackEngines/AndroidPlayer/NDK"
compileSdkVersion 34
buildToolsVersion '34.0.0'
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
}
defaultConfig {
minSdkVersion 23
targetSdkVersion 34
ndk {
abiFilters 'armeabi-v7a', 'arm64-v8a'
}
versionCode 26
versionName '1.0.0'
consumerProguardFiles 'proguard-unity.txt'
}
lintOptions {
abortOnError false
}
aaptOptions {
noCompress = ['.unity3d', '.ress', '.resource', '.obb', '.bundle', '.unityexp'] + unityStreamingAssets.tokenize(', ')
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~"
}
packagingOptions {
doNotStrip '*/armeabi-v7a/*.so'
doNotStrip '*/arm64-v8a/*.so'
jniLibs {
useLegacyPackaging true
}
}
}
// Dependencies for "com.unity.purchasing". This section is automatically generated.
afterEvaluate {
dependencies {
implementation 'com.android.billingclient:billing:6.2.1'
}
}
// End of dependencies for "com.unity.purchasing".
Currently tested 2021.3.43f1 and 2022.3.45f1. Both same. Google doesn’t allow me to upload app bundle with this:
Update your com.google.android.play:core:1.10.3 Maven dependency to an Android 14 compatible version! Your current com.google.android.play:core:1.10.3 library is incompatible with targetSdkVersion 34 (Android 14), which introduces a backwards-incompatible change to broadcast receivers. As a reminder, from August 31, 2024, Google Play requires all new app releases to target Android 14. Update to the latest library version dependency to avoid app crashes.
I tried manually installing Play Core from here https://developers.google.com/unity/packages#play_core
And I tried force resolve, but now the build fails with a duplicated classes error. Still play.core is 1.10.13.
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
// Android Resolver Dependencies Start
implementation 'com.google.android.play:core:1.10.3' // Assets/GooglePlayPlugins/com.google.play.core/Editor/PlayCoreDependencies.xml:3
implementation 'com.google.android.play:core-common:2.0.4' // Assets/GooglePlayPlugins/com.google.play.core/Editor/Dependencies.xml:3
implementation 'com.google.games:gpgs-plugin-support:0.10.14' // Assets/GooglePlayGames/Editor/GooglePlayGamesPluginDependencies.xml:11
// Android Resolver Dependencies End
**DEPS**}
I am having this same issue with a small difference. Other libraries are already requiring target API 34 which does not change the behaviour as it does in the original description. Nothing changes even if I change the target to 35. I am always getting this error message on multiple devices. AndroidJavaException: java.lang.ClassNotFoundException: com.google.android.gms.games.Games
I am having this same issue with a small difference. Other libraries are already requiring target API 34 which does not change the behaviour as it does in the original description. Nothing changes even if I change the target to 35. I am always getting this error message on multiple devices.
AndroidJavaException: java.lang.ClassNotFoundException: com.google.android.gms.games.Games
Try force resolve or uncheck custom gradle files and check it again.
Try force resolve or uncheck custom gradle files and check it again.
Hello, thanks for the input. I have tried force resolving as well as resetting the custom gradle files. The external dependency manager wants to re-enable those as it is required by other plugins.
Try force resolve or uncheck custom gradle files and check it again.
Hello, thanks for the input. I have tried force resolving as well as resetting the custom gradle files. The external dependency manager wants to re-enable those as it is required by other plugins.
Yes for some reason EDM4U requires enable custom gradle files. If it asks just press check. Deleting gradle files in android plugin folder and try re-enabling custom gradle files again.
If I disable custom gradle files the build fails because of duplicate classes:
* What went wrong:
[error] Execution failed for task ':launcher:checkReleaseDuplicateClasses'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.CheckDuplicatesRunnable
> Duplicate class android.support.v4.app.RemoteActionCompatParcelizer found in modules core-1.2.0-runtime (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.9.0-runtime (:androidx.core.core-1.9.0:)
Duplicate class android.support.v4.graphics.drawable.IconCompatParcelizer found in modules core-1.2.0-runtime (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.9.0-runtime (:androidx.core.core-1.9.0:)
Duplicate class android.support.v4.os.ResultReceiver found in modules core-1.2.0-runtime (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.9.0-runtime (:androidx.core.core-1.9.0:)
Duplicate class android.support.v4.os.ResultReceiver$1 found in modules core-1.2.0-runtime (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.9.0-runtime (:androidx.core.core-1.9.0:)
Duplicate class android.support.v4.os.ResultReceiver$MyResultReceiver found in modules core-1.2.0-runtime (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.9.0-runtime (:androidx.core.core-1.9.0:)
Duplicate class android.support.v4.os.ResultReceiver$MyRunnable found in modules core-1.2.0-runtime (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.9.0-runtime (:androidx.core.core-1.9.0:)
Duplicate class androidx.activity.Cancellable found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.ComponentActivity found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.ComponentActivity$1 found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.ComponentActivity$2 found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.ComponentActivity$3 found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.ComponentActivity$NonConfigurationInstances found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.ImmLeaksCleaner found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.OnBackPressedCallback found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.OnBackPressedDispatcher found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.OnBackPressedDispatcher$LifecycleOnBackPressedCancellable found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.OnBackPressedDispatcher$OnBackPressedCancellable found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.activity.OnBackPressedDispatcherOwner found in modules jetified-activity-1.2.3-runtime (androidx.activity:activity:1.2.3) and jetified-androidx.activity.activity-1.0.0-runtime (:androidx.activity.activity-1.0.0:)
Duplicate class androidx.arch.core.executor.ArchTaskExecutor found in modules core-runtime-2.1.0-runtime (androidx.arch.core:core-runtime:2.1.0) and jetified-androidx.arch.core.core-runtime-2.1.0-runtime (:androidx.arch.core.core-runtime-2.1.0:)
Duplicate class androidx.arch.core.executor.ArchTaskExecutor$1 found in modules core-runtime-2.1.0-runtime (androidx.arch.core:core-runtime:2.1.0) and jetified-androidx.arch.core.core-runtime-2.1.0-runtime (:androidx.arch.core.core-runtime-2.1.0:)
Duplicate class androidx.arch.core.executor.ArchTaskExecutor$2 found in modules core-runtime-2.1.0-runtime (androidx.arch.core:core-runtime:2.1.0) and jetified-androidx.arch.core.core-runtime-2.1.0-runtime (:androidx.arch.core.core-runtime-2.1.0:)
Duplicate class androidx.arch.core.executor.DefaultTaskExecutor found in modules core-runtime-2.1.0-runtime (androidx.arch.core:core-runtime:2.1.0) and jetified-androidx.arch.core.core-runtime-2.1.0-runtime (:androidx.arch.core.core-runtime-2.1.0:)
Duplicate class androidx.arch.core.executor.DefaultTaskExecutor$1 found in modules core-runtime-2.1.0-runtime (androidx.arch.core:core-runtime:2.1.0) and jetified-androidx.arch.core.core-runtime-2.1.0-runtime (:androidx.arch.core.core-runtime-2.1.0:)
Duplicate class androidx.arch.core.executor.TaskExecutor found in modules core-runtime-2.1.0-runtime (androidx.arch.core:core-runtime:2.1.0) and jetified-androidx.arch.core.core-runtime-2.1.0-runtime (:androidx.arch.core.core-runtime-2.1.0:)
Duplicate class androidx.arch.core.internal.FastSafeIterableMap found in modules core-common-2.1.0 (androidx.arch.core:core-common:2.1.0) and jetified-androidx.arch.core.core-common-2.1.0 (androidx.arch.core.core-common-2.1.0.jar)
Duplicate class androidx.arch.core.internal.SafeIterableMap found in modules core-common-2.1.0 (androidx.arch.core:core-common:2.1.0) and jetified-androidx.arch.core.core-common-2.1.0 (androidx.arch.core.core-common-2.1.0.jar)
Duplicate class androidx.arch.core.internal.SafeIterableMap$AscendingIterator found in modules core-common-2.1.0 (androidx.arch.core:core-common:2.1.0) and jetified-androidx.arch.core.core-common-2.1.0 (androidx.arch.core.core-common-2.1.0.jar)
Duplicate class androidx.arch.core.internal.SafeIterableMap$DescendingIterator found in modules core-common-2.1.0 (androidx.arch.core:core-common:2.1.0) and jetified-androidx.arch.core.core-common-2.1.0 (androidx.arch.core.core-common-2.1.0.jar)
Duplicate class androidx.arch.core.internal.SafeIterableMap$Entry found in modules core-common-2.1.0 (androidx.arch.core:core-common:2.1.0) and jetified-androidx.arch.core.core-common-2.1.0 (androidx.arch.core.core-common-2.1.0.jar)
Duplicate class androidx.arch.core.internal.SafeIterableMap$IteratorWithAdditions found in modules core-common-2.1.0 (androidx.arch.core:core-common:2.1.0) and jetified-androidx.arch.core.core-common-2.1.0 (androidx.arch.core.core-common-2.1.0.jar)
Duplicate class androidx.arch.core.internal.SafeIterableMap$ListIterator found in modules core-common-2.1.0 (androidx.arch.core:core-common:2.1.0) and jetified-androidx.arch.core.core-common-2.1.0 (androidx.arch.core.core-common-2.1.0.jar)
(...Truncated...)
Interestingly, this happens too if I disable Jetifier in the external dependency manager settings and do a force resolve after deleting the resolved libraries. Another interesting note is that this duplicate class failure shows up in Unity Cloud Build as well, preventing us using it, which is why I'm even doing a build locally.
The same issue with 0.10.14 and Resolver v183, target API 33 java.lang.ClassNotFoundException: com.google.games.bridge.HelperFragment 09-21 22:35:43.466 8046 8138 W Unity : GooglePlayGames.OurUtils.PlayGamesHelperObject:Update()
I had to update IAP and Resolver because it's required by Google. Still can target API 34 (crash).
I have the same issue: I get an error when Social.ShowLeaderboardUI() is called: AndroidJavaException: java.lang.ClassNotFoundException:com.google.games.bridge.HelperFragment. Did anyone fix this?
Describe the bug When I launched my game, stuck in the authentication with this error:
To Reproduce Steps to reproduce the behavior:
Try "force resolve" and run, authentication passes but when I upload it on Google Play Console, google rejects it with this message:
Expected behavior Authentication should be pass, and Google accepts the update
Observed behavior After setting target API level to 34, only Android 14 users crashed with this error message:
So I updated Unity from 2020 LTS to 2021 LTS, and then 2021.3.43f1, and also updated EDM4U to the latest version but now stuck in the infinite loading in the authentication step, so tried force resolve and it worked, but google rejects the update with this:
In brief,
Bug Report Capture a bug report and share the Google Drive link. If the bug report contains sensitive information, then make it private and only give access to requests from
...@google.com
accounts.Versions