android - 为什么我的Gradle无法在Unity Android Build上使用?

标签 android firebase unity3d gradle build

我曾经使用'Internal'选项构建我的Android版本,但在Unity 2019中没有选择。

尝试构建我的Android版本时,出现以下错误:

D8:程序类型已经存在:
android.support.annotation.FractionRes
UnityEngine.GUIUtility:ProcessEvent(Int32,IntPtr)

失败:生成失败,发生异常。
* 什么地方出了错:
任务':transformClassesAndResourcesWithR8ForRelease'的执行失败。
com.android.tools.r8.CompilationFailedException:编译无法完成
*尝试:
使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获取更多日志输出。与--scan一起运行以获取完整的见解。
*在https://help.gradle.org上获得更多帮助
19年代建立失败

Task :preBuild UP-TO-DATE

Task :extractProguardFiles

Task :CropLib:preBuild UP-TO-DATE

Task :CropLib:preReleaseBuild UP-TO-DATE

Task :CropLib:checkReleaseManifest

Task :CropLib:processReleaseManifest

Task :Firebase:preBuild UP-TO-DATE

Task :Firebase:preReleaseBuild UP-TO-DATE

Task :Firebase:checkReleaseManifest

Task :Firebase:processReleaseManifest

Task :preReleaseBuild

Task :CropLib:compileReleaseAidl NO-SOURCE

Task :Firebase:compileReleaseAidl NO-SOURCE

Task :compileReleaseAidl NO-SOURCE

Task :CropLib:packageReleaseRenderscript NO-SOURCE

Task :Firebase:packageReleaseRenderscript NO-SOURCE

Task :compileReleaseRenderscript NO-SOURCE

Task :checkReleaseManifest

Task :generateReleaseBuildConfig

Task :prepareLintJar

Task :generateReleaseSources

Task :CropLib:compileReleaseRenderscript NO-SOURCE

Task :CropLib:generateReleaseBuildConfig

Task :CropLib:generateReleaseResValues

Task :CropLib:generateReleaseResources

Task :CropLib:packageReleaseResources

Task :CropLib:generateReleaseRFile

Task :CropLib:prepareLintJar

Task :CropLib:generateReleaseSources

Task :CropLib:javaPreCompileRelease

Task :CropLib:compileReleaseJavaWithJavac

Task :CropLib:bundleLibCompileRelease

Task :Firebase:compileReleaseRenderscript NO-SOURCE

Task :Firebase:generateReleaseBuildConfig

Task :Firebase:generateReleaseResValues

Task :Firebase:generateReleaseResources

Task :Firebase:packageReleaseResources

Task :Firebase:generateReleaseRFile

Task :Firebase:prepareLintJar

Task :Firebase:generateReleaseSources

Task :Firebase:javaPreCompileRelease

Task :Firebase:compileReleaseJavaWithJavac

Task :Firebase:bundleLibCompileRelease

Task :javaPreCompileRelease

Task :mainApkListPersistenceRelease

Task :generateReleaseResValues

Task :generateReleaseResources

Task :mergeReleaseResources

Task :createReleaseCompatibleScreenManifests

Task :processReleaseManifest



/ Users / spin / Desktop / Yellows Unity应用-Android

2019 / Temp / gradleOut / src / main / AndroidManifest.xml:24:9-31:50警告:
在AndroidManifest.xml:24处将activity#com.google.firebase.auth.internal.FederatedSignInActivity@android:launchMode标记为替换其他声明,但没有其他声明
警告:删除资源com.Yellows.Monthly:字符串/保存,而无需默认值。

Task :processReleaseResources Task :compileReleaseJavaWithJavac Task :compileReleaseSources Task :CropLib:prepareLintJarForPublish Task :Firebase:prepareLintJarForPublish Task :lintVitalRelease Task :mergeReleaseShaders Task :compileReleaseShaders Task :generateReleaseAssets Task :CropLib:mergeReleaseShaders Task :CropLib:compileReleaseShaders Task :CropLib:generateReleaseAssets Task :CropLib:packageReleaseAssets Task :Firebase:mergeReleaseShaders Task :Firebase:compileReleaseShaders Task :Firebase:generateReleaseAssets Task :Firebase:packageReleaseAssets Task :mergeReleaseAssets Task :validateSigningRelease Task :signingConfigWriterRelease Task :processReleaseJavaRes NO-SOURCE Task :CropLib:processReleaseJavaRes NO-SOURCE Task :CropLib:bundleLibResRelease Task :Firebase:processReleaseJavaRes NO-SOURCE Task :Firebase:bundleLibResRelease Task :transformResourcesWithMergeJavaResForRelease Task :CropLib:bundleLibRuntimeRelease Task :CropLib:mergeReleaseConsumerProguardFiles Task :Firebase:bundleLibRuntimeRelease Task :Firebase:mergeReleaseConsumerProguardFiles Task :transformClassesAndResourcesWithR8ForRelease FAILED R8 is the new Android code shrinker. If you experience any issues, please file a bug at https://issuetracker.google.com, using 'Shrinker (R8)' as component name. You can disable R8 by updating gradle.properties with 'android.enableR8=false'. Current version is: 1.4.77 (build b74371231cb896b02f83285efb055b7c00ff64d8 from go/r8bot (luci-r8-ci-archive-0-eqqf)). Deprecated Gradle features were used in this build, making it incompatible with Gradle 6.0. Use '--warning-mode all' to show the individual deprecation warnings. See https://docs.gradle.org/5.1.1/userguide/command_line_interface.html#sec:command_line_warnings 55 actionable tasks: 55 executed CommandInvokationFailure: Gradle build failed. /Applications/Unity/Hub/Editor/2019.2.0f1/PlaybackEngines/AndroidPlayer/Tools/OpenJDK/MacOS/bin/java -classpath "/Applications/Unity/Hub/Editor/2019.2.0f1/PlaybackEngines/AndroidPlayer/Tools/gradle/lib/gradle-launcher-5.1.1.jar" org.gradle.launcher.GradleMain "-Dorg.gradle.jvmargs=-Xmx4096m" "assembleRelease"



stderr [
D8:程序类型已存在:android.support.annotation.FractionRes

失败:生成失败,发生异常。
  • 出了什么问题:
    任务':transformClassesAndResourcesWithR8ForRelease'的执行失败。

    com.android.tools.r8.CompilationFailedException: Compilation failed to complete

  • 尝试:
    使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获取更多日志输出。与--scan一起运行以获取完整的见解。
  • https://help.gradle.org上获得更多帮助

  • 19年代建立失败
    ]
    标准输出[

    Task :preBuild UP-TO-DATE Task :extractProguardFiles Task :CropLib:preBuild UP-TO-DATE Task :CropLib:preReleaseBuild UP-TO-DATE Task :CropLib:checkReleaseManifest Task :CropLib:processReleaseManifest Task :Firebase:preBuild UP-TO-DATE Task :Firebase:preReleaseBuild UP-TO-DATE Task :Firebase:checkReleaseManifest Task :Firebase:processReleaseManifest Task :preReleaseBuild Task :CropLib:compileReleaseAidl NO-SOURCE Task :Firebase:compileReleaseAidl NO-SOURCE Task :compileReleaseAidl NO-SOURCE Task :CropLib:packageReleaseRenderscript NO-SOURCE Task :Firebase:packageReleaseRenderscript NO-SOURCE Task :compileReleaseRenderscript NO-SOURCE Task :checkReleaseManifest Task :generateReleaseBuildConfig Task :prepareLintJar Task :generateReleaseSources Task :CropLib:compileReleaseRenderscript NO-SOURCE Task :CropLib:generateReleaseBuildConfig Task :CropLib:generateReleaseResValues Task :CropLib:generateReleaseResources Task :CropLib:packageReleaseResources Task :CropLib:generateReleaseRFile Task :CropLib:prepareLintJar Task :CropLib:generateReleaseSources Task :CropLib:javaPreCompileRelease Task :CropLib:compileReleaseJavaWithJavac Task :CropLib:bundleLibCompileRelease Task :Firebase:compileReleaseRenderscript NO-SOURCE Task :Firebase:generateReleaseBuildConfig Task :Firebase:generateReleaseResValues Task :Firebase:generateReleaseResources Task :Firebase:packageReleaseResources Task :Firebase:generateReleaseRFile Task :Firebase:prepareLintJar Task :Firebase:generateReleaseSources Task :Firebase:javaPreCompileRelease Task :Firebase:compileReleaseJavaWithJavac Task :Firebase:bundleLibCompileRelease Task :javaPreCompileRelease Task :mainApkListPersistenceRelease Task :generateReleaseResValues Task :generateReleaseResources Task :mergeReleaseResources Task :createReleaseCompatibleScreenManifests

    Task :processReleaseManifest /Users/spin/Desktop/Yellows Unity App - Android 2019/Temp/gradleOut/src/main/AndroidManifest.xml:24:9-31:50 Warning: activity#com.google.firebase.auth.internal.FederatedSignInActivity@android:launchMode was tagged at AndroidManifest.xml:24 to replace other declarations but no other declaration present warn: removing resource com.Yellows.Monthly:string/save without required default value.

    Task :processReleaseResources Task :compileReleaseJavaWithJavac Task :compileReleaseSources Task :CropLib:prepareLintJarForPublish Task :Firebase:prepareLintJarForPublish Task :lintVitalRelease Task :mergeReleaseShaders Task :compileReleaseShaders Task :generateReleaseAssets Task :CropLib:mergeReleaseShaders Task :CropLib:compileReleaseShaders Task :CropLib:generateReleaseAssets Task :CropLib:packageReleaseAssets Task :Firebase:mergeReleaseShaders Task :Firebase:compileReleaseShaders Task :Firebase:generateReleaseAssets Task :Firebase:packageReleaseAssets Task :mergeReleaseAssets Task :validateSigningRelease Task :signingConfigWriterRelease Task :processReleaseJavaRes NO-SOURCE Task :CropLib:processReleaseJavaRes NO-SOURCE Task :CropLib:bundleLibResRelease Task :Firebase:processReleaseJavaRes NO-SOURCE Task :Firebase:bundleLibResRelease Task :transformResourcesWithMergeJavaResForRelease Task :CropLib:bundleLibRuntimeRelease Task :CropLib:mergeReleaseConsumerProguardFiles Task :Firebase:bundleLibRuntimeRelease Task :Firebase:mergeReleaseConsumerProguardFiles

    Task :transformClassesAndResourcesWithR8ForRelease FAILED R8 is the new Android code shrinker. If you experience any issues, please file a bug at https://issuetracker.google.com, using 'Shrinker (R8)' as component name. You can disable R8 by updating gradle.properties with 'android.enableR8=false'. Current version is: 1.4.77 (build b74371231cb896b02f83285efb055b7c00ff64d8 from go/r8bot (luci-r8-ci-archive-0-eqqf)).



    此版本中使用了不推荐使用的Gradle功能,使其与Gradle 6.0不兼容。
    使用“--warning-mode all”来显示各个弃用警告。
    参见https://docs.gradle.org/5.1.1/userguide/command_line_interface.html#sec:command_line_warnings
    55个可执行任务:55个已执行
    ]
    退出代码:1
    UnityEditor.Android.Command.WaitForProgramToRun(UnityEditor.Utils.Program p,UnityEditor.Android.Command + WaitingForProcessToExit等待ForProcessToExit,System.String errorMsg)(位于<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.Android.Command.Run(System.Diagnostics.ProcessStartInfo psi,UnityEditor.Android.Command + WaitingForProcessToExit等待ForProcessToExit,System.String errorMsg)(位于<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.Android.Command.Run(System.String命令,System.String args,System.String工作目录,UnityEditor.Android.Command + WaitingForProcessToExit等待ForProcessToExit,System.String errorMsg)(位于<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.Android.AndroidJavaTools.RunJava(System.String args,System.String workingdir,System.Action 1[T] progress, System.String error) (at <8277255796414cc8b8865316c1676de5>:0) UnityEditor.Android.GradleWrapper.Run (UnityEditor.Android.AndroidJavaTools javaTools, System.String workingdir, System.String task, System.Action 1 [T]进度)(位于<8277255796414cc8b8865316c1676de5>:0)
    重新作为GradleInvokationException:Gradle构建失败
    UnityEditor.Android.GradleWrapper.Run(UnityEditor.Android.AndroidJavaTools javaTools,System.String workingdir,System.String task,System.Action`1 [T] progress)(在<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.Android.PostProcessor.Tasks.BuildGradleProject.Execute(UnityEditor.Android.PostProcessor.PostProcessorContext上下文)(位于<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTask​​s(UnityEditor.Android.PostProcessor.PostProcessorContext上下文)(位于<8277255796414cc8b8865316c1676de5>:0)
    作为BuildFailedException重新抛出:引发了类型为'UnityEditor.Build.BuildFailedException'的异常。
    UnityEditor.Android.PostProcessor.CancelPostProcess.AbortBuild(System.String标题,System.String消息,System.Exception ex)(位于<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.Android.PostProcessor.PostProcessRunner.RunAllTask​​s(UnityEditor.Android.PostProcessor.PostProcessorContext上下文)(位于<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.Android.PostProcessAndroidPlayer.PostProcess(UnityEditor.BuildTarget目标,System.String stagingAreaData,System.String stagingArea,System.String playerPackage,System.String installPath,System.String companyName,System.String productName,UnityEditor.BuildOptions选项,UnityEditor。 RuntimeClassRegistry usedClassRegistry,UnityEditor.Build.Reporting.BuildReport报告)(位于<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.Android.AndroidBuildPostprocessor.PostProcess(UnityEditor.Modules.BuildPostProcessArgs args,UnityEditor.BuildProperties&outProperties)(位于<8277255796414cc8b8865316c1676de5>:0)
    UnityEditor.PostprocessBuildPlayer.Postprocess(UnityEditor.BuildTargetGroup targetGroup,UnityEditor.BuildTarget目标,System.String installPath,System.String companyName,System.String productName,System.Int32宽度,System.Int32高度,UnityEditor.BuildOptions选项,UnityEditor.RuntimeClassRegistry usedClassRegistry ,UnityEditor.Build.Reporting.BuildReport报告)(位于/Users/builduser/buildslave/unity/build/Editor/Mono/BuildPipeline/PostprocessBuildPlayer.cs:281)
    UnityEngine.GUIUtility:ProcessEvent(Int32,IntPtr)

    构建完成,结果为“失败”

    UnityEditor.BuildPlayerWindow + BuildMethodException:114个错误
    在/Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:190中的UnityEditor.BuildPlayerWindow + DefaultBuildMethods.BuildPlayer(UnityEditor.BuildPlayerOptions选项)[0x00242]
    在/Users/builduser/buildslave/unity/build/Editor/Mono/BuildPlayerWindowBuildMethods.cs:95中的UnityEditor.BuildPlayerWindow.CallBuildMethods(System.Boolean askForBuildLocation,UnityEditor.BuildOptions defaultBuildOptions)[0x0007f]
    UnityEngine.GUIUtility:ProcessEvent(Int32,IntPtr)

    最佳答案

    com.android.support:support-annotations:26.1.0在包中应该只存在一次:

    implementation ("com.android.support:support-v4:26.1.0") {
        exclude group: "com.android.support", module: "support-annotations"
    }
    

    关于android - 为什么我的Gradle无法在Unity Android Build上使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57331449/

    相关文章:

    android - ExpandableListView 和滚动

    firebase - 需要输入更多数据以便在 Firebase 中进行用户注册

    android - 如何编写 adb jdwp + adbforward 脚本?

    java - 将 EditText 过滤器设置为自定义范围内的数字

    database - Firebase - 使用云功能定位特定的 Firestore 文档字段

    ios - 未调用 Flutter Firebase Messaging iOS 处理程序

    c# - TCP/IP Unity Android ERROR 帮助

    c# - 检测敌人是否面对玩家

    用于将 Visual LTR 转换为逻辑 RTL 的 C# 算法

    java - 关闭旧的套接字后创建新的套接字导致连接被拒绝