10

Unity version: Unity 2020.1.17f

After build game for Android, I got these erros

In Player Settings I checked Custom Main Manifest, Custom Launcher Manifest, Custom Launcher Gradle Template and Custom Gralde Properties Template

I tried to everything, please help

This error happens when I made Android Resolver

Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':launcher:checkReleaseDuplicateClasses'.
> 1 exception was raised by workers:
  java.lang.RuntimeException: java.lang.RuntimeException: Duplicate class android.support.customtabs.ICustomTabsCallback found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.customtabs.ICustomTabsCallback$Stub found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.customtabs.ICustomTabsCallback$Stub$Proxy found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.customtabs.ICustomTabsService found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.customtabs.ICustomTabsService$Stub found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.customtabs.ICustomTabsService$Stub$Proxy found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.customtabs.IPostMessageService found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.customtabs.IPostMessageService$Stub found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.customtabs.IPostMessageService$Stub$Proxy found in modules browser-1.0.0-runtime.jar (androidx.browser:browser:1.0.0) and jetified-androidx.browser.browser-1.0.0-runtime.jar (:androidx.browser.browser-1.0.0:)
  Duplicate class android.support.v4.app.RemoteActionCompatParcelizer found in modules core-1.2.0-runtime.jar (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.3.2-runtime.jar (:androidx.core.core-1.3.2:)
  Duplicate class android.support.v4.graphics.drawable.IconCompatParcelizer found in modules core-1.2.0-runtime.jar (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.3.2-runtime.jar (:androidx.core.core-1.3.2:)
  Duplicate class android.support.v4.os.ResultReceiver found in modules core-1.2.0-runtime.jar (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.3.2-runtime.jar (:androidx.core.core-1.3.2:)
  Duplicate class android.support.v4.os.ResultReceiver$1 found in modules core-1.2.0-runtime.jar (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.3.2-runtime.jar (:androidx.core.core-1.3.2:)
  Duplicate class android.support.v4.os.ResultReceiver$MyResultReceiver found in modules core-1.2.0-runtime.jar (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.3.2-runtime.jar (:androidx.core.core-1.3.2:)
  Duplicate class android.support.v4.os.ResultReceiver$MyRunnable found in modules core-1.2.0-runtime.jar (androidx.core:core:1.2.0) and jetified-androidx.core.core-1.3.2-runtime.jar (:androidx.core.core-1.3.2:)
  Duplicate class androidx.annotation.AnimRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.AnimatorRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.AnyRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.AnyThread found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.ArrayRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.AttrRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.BinderThread found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.BoolRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.CallSuper found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.CheckResult found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.ColorInt found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.ColorLong found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.ColorRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.ContentView found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.DimenRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.Dimension found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.DrawableRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.FloatRange found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.FontRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.FractionRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.GuardedBy found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.HalfFloat found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.IdRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.InspectableProperty found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.InspectableProperty$EnumEntry found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.InspectableProperty$FlagEntry found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.InspectableProperty$ValueType found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.IntDef found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.IntRange found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.IntegerRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.InterpolatorRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.Keep found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.LayoutRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.LongDef found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.MainThread found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.MenuRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.NavigationRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.NonNull found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.Nullable found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.PluralsRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.Px found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.RawRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.RequiresApi found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.RequiresFeature found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.RequiresPermission found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.RequiresPermission$Read found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.RequiresPermission$Write found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.RestrictTo found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.RestrictTo$Scope found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.Size found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.StringDef found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.StringRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.StyleRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.StyleableRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.TransitionRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.UiThread found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.VisibleForTesting found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.WorkerThread found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.annotation.XmlRes found in modules annotation-1.1.0.jar (androidx.annotation.annotation-1.1.0.jar) and annotation-1.1.0.jar (androidx.annotation:annotation:1.1.0)
  Duplicate class androidx.arch.core.executor.ArchTaskExecutor found in modules core-runtime-2.0.1-runtime.jar (androidx.arch.core:core-runtime:2.0.1) and jetified-androidx.arch.core.core-runtime-2.0.1-runtime.jar (:androidx.arch.core.core-runtime-2.0.1:)
  Duplicate class androidx.arch.core.executor.ArchTaskExecutor$1 found in modules core-runtime-2.0.1-runtime.jar (androidx.arch.core:core-runtime:2.0.1) and jetified-androidx.arch.core.core-runtime-2.0.1-runtime.jar (:androidx.arch.core.core-runtime-2.0.1:)
  Duplicate class androidx.arch.core.executor.ArchTaskExecutor$2 found in modules core-runtime-2.0.1-runtime.jar (androidx.arch.core:core-runtime:2.0.1) and jetified-androidx.arch.core.core-runtime-2.0.1-runtime.jar (:androidx.arch.core.core-runtime-2.0.1:)
  Duplicate class androidx.arch.core.executor.DefaultTaskExecutor found in modules core-runtime-2.0.1-runtime.jar (androidx.arch.core:core-runtime:2.0.1) and jetified-androidx.arch.core.core-runtime-2.0.1-runtime.jar (:androidx.arch.core.core-runtime-2.0.1:)
  Duplicate class androidx.arch.core.executor.DefaultTaskExecutor$1 found in modules core<message truncated>

5 Answers 5

8

This error often occurs when you import multiple SDKs with different versions of the Play Services Resolver.

Solutions:

  1. Delete resolved libraries and resolve again

    • Assets > Play Services Resolver > Android Resolver > Delete Resolved Libraries

    • Assets > Play Services Resolver > Android Resolver > Resolve

  2. Include SDKs again

    • Delete imported SDKs

    • Import SDKs again, but this time check the resolver for only one tool

    • Assets > Play Services Resolver > Android Resolver > Resolve

  3. Manually delete duplicate classes (in worst case)

    • In Assets > Play Services Resolver > Android Resolver > Settings disable auto resolve.

    • Find in resources folder duplicate classes mentioned in log and delete them ( eg. delete 'androidx.annotation.annotation-1.1.0.jar' and keep 'annotation-1.1.0.jar')

Sign up to request clarification or add additional context in comments.

Comments

3

For me the the only fix was: 1 - "Delete resolved libraries" in android resolver. 2 - Delete all libraries from "Android" folder 3 - "Resolve" in android resolver

Comments

0

For Unity 2019.4 or lower version

  • Use Play Services Resolver to resolve the dependencies.
  • Assets > Play Services Resolver > Android Resolver > Resolve enter image description here

For Unity 2020+ versions

  • Use External Dependency Manager to resolve the dependencies.
  • Assets > External Dependency Manager > Android Resolver > Resolve enter image description here

Comments

0

I deleted these files from the Asset>Plugins folder and everything workedenter image description here

Comments

0

To the guys who are facing this issue pls try to reimport your assets. In Assets (Tab) > Reimport hope this will solve your issue.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.