Ошибка при компиляции игры Android Unity2d apk

  1. Ошибка

Modifying Android project files failed with output: System.InvalidOperationException: Sequence contains no matching element at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable1[T] source, System.Func2[T,TResult] predicate) [0x00011] in :0 at ModifyProjectScript.OnModifyAndroidProjectFiles (UnityEditor.Android.AndroidProjectFiles projectFiles) [0x0043a] in C:\Program Files\Unity\drifTTachki\Assets\Editor\Android\ModifyProjectScript.cs:167 at UnityEditor.Android.PostProcessor.ProcessModifyProjectFilesCallbacks.ModifyAndroidProjectFiles (AndroidPlayerBuildProgram.Data.AndroidProjectFileArgs androidProjectFiles) [0x006fb] in <07fef031b4ef4ad1a4a5a930fbd022ca>:0 at UnityEditor.Android.AndroidBuildPostprocessor.ModifyAndroidProjectCallback (AndroidPlayerBuildProgram.Data.AndroidProjectFileArgs args) [0x00001] in <07fef031b4ef4ad1a4a5a930fbd022ca>:0 at (wrapper delegate-invoke) System.Action1[AndroidPlayerBuildProgram.Data.AndroidProjectFileArgs].invoke_void_T(AndroidPlayerBuildProgram.Data.AndroidProjectFileArgs) at Bee.BeeDriver.BuildRequest+<>c__DisplayClass63_01[T].b__0 (System.Object o) [0x00000] in <6850540dafc6460ebf66671de0d5d68f>:0 at Bee.BeeDriver.BeeDriver_RunBackend+<>c__DisplayClass1_0.b__0 () [0x00021] in <6850540dafc6460ebf66671de0d5d68f>:0 at System.Threading.Tasks.Task.InnerInvoke () [0x0000f] in <0de99929796b4095b47389e59e446fbd>:0 at System.Threading.Tasks.Task.Execute () [0x00000] in <0de99929796b4095b47389e59e446fbd>:0 --- End of stack trace from previous location where exception was thrown --- at Bee.BeeDriver.BeeDriver_RunBackend.ProcessRPCRequest (Bee.BinLog.RPCActionMessage msg, Bee.BeeDriver.BuildRequest+RPCCallback rpcCallback, IPCConnection ipcConnection, System.Threading.Tasks.Task writePipeConnectionTask, Bee.BeeDriver.InternalState state) [0x00111] in <6850540dafc6460ebf66671de0d5d68f>:0 UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

  1. Ошибка

Build completed with a result of 'Failed' in 908 seconds (908134 ms) Modifying Android project files failed with output: System.InvalidOperationException: Sequence contains no matching element at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable1[T] source, System.Func2[T,TResult] predicate) [0x00011] in :0 at ModifyProjectScript.OnModifyAndroidProjectFiles (UnityEditor.Android.AndroidProjectFiles projectFiles) [0x0043a] in C:\Program Files\Unity\drifTTachki\Assets\Editor\Android\ModifyProjectScript.cs:167 at UnityEditor.Android.PostProcessor.ProcessModifyProjectFilesCallbacks.ModifyAndroidProjectFiles (AndroidPlayerBuildProgram.Data.AndroidProjectFileArgs androidProjectFiles) [0x006fb] in <07fef031b4ef4ad1a4a5a930fbd022ca>:0 at UnityEditor.Android.AndroidBuildPostprocessor.ModifyAndroidProjectCallback (AndroidPlayerBuildProgram.Data.AndroidProjectFileArgs args) [0x00001] in <07fef031b4ef4ad1a4a5a930fbd022ca>:0 at (wrapper delegate-invoke) System.Action1[AndroidPlayerBuildProgram.Data.AndroidProjectFileArgs].invoke_void_T(AndroidPlayerBuildProgram.Data.AndroidProjectFileArgs) at Bee.BeeDriver.BuildRequest+<>c__DisplayClass63_01[T].b__0 (System.Object o) [0x00000] in <6850540dafc6460ebf66671de0d5d68f>:0 at Bee.BeeDriver.BeeDriver_RunBackend+<>c__DisplayClass1_0.b__0 () [0x00021] in <6850540dafc6460ebf66671de0d5d68f>:0 at System.Threading.Tasks.Task.InnerInvoke () [0x0000f] in <0de99929796b4095b47389e59e446fbd>:0 at System.Threading.Tasks.Task.Execute () [0x00000] in <0de99929796b4095b47389e59e446fbd>:0 --- End of stack trace from previous location where exception was thrown --- at Bee.BeeDriver.BeeDriver_RunBackend.ProcessRPCRequest (Bee.BinLog.RPCActionMessage msg, Bee.BeeDriver.BuildRequest+RPCCallback rpcCallback, IPCConnection ipcConnection, System.Threading.Tasks.Task writePipeConnectionTask, Bee.BeeDriver.InternalState state) [0x00111] in <6850540dafc6460ebf66671de0d5d68f>:0 UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)

    using System.Linq;
    using UnityEditor;
    using UnityEditor.Android;
    using Unity.Android.Gradle;
    using Unity.Android.Gradle.Manifest;
    public class ModifyProjectScript : AndroidProjectFilesModifier
    {
    public override void 
    OnModifyAndroidProjectFiles(AndroidProjectFiles projectFiles)
    {
        var templatedValueG20 = System.IO.Directory.GetParent(System.IO.Path.Combine(UnityEngine.Application.dataPath))?.FullName;

        
        var elementG0 = new Element($"// Android Resolver Dependencies Start");

        projectFiles.UnityLibraryBuildGradle.Dependencies.AddElement(elementG0);

        var elementG1 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:adcolony-adapter:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:12");

        var elementG2 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:admob-adapter:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:13");

        var elementG3 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:applovin-adapter:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:14");

        var elementG4 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:facebook-adapter:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:15");

        var elementG5 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:ironsource-adapter:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:16");

        var elementG6 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:mediation-sdk:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:10");

        var elementG7 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:mintegral-adapter:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:17");

        var elementG8 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:unityads-adapter:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:18");

        var elementG9 = projectFiles.UnityLibraryBuildGradle.Dependencies.AddDependencyImplementationRaw("'com.unity3d.mediation:vungle-adapter:[1.0,2.0[' // Assets/Editor/MediationAdapterDependencies.xml:19");

        var elementG10 = new Element($"// Android Resolver Dependencies End");

        projectFiles.UnityLibraryBuildGradle.Dependencies.AddElement(elementG10);

        var elementG11 = projectFiles.UnityLibraryBuildGradle.Dependencies.GetElements().First(e => e.GetRaw() == $"implementation fileTree(dir: \'libs\', include: [\'*.jar\'])");

        if (elementG11?.GetRaw() != null && elementG0?.GetRaw() != null)

            elementG0?.AddElementDependency(elementG11);

        if (elementG0?.GetRaw() != null && elementG1?.GetRaw() != null)

            elementG1?.AddElementDependency(elementG0);

        if (elementG1?.GetRaw() != null && elementG2?.GetRaw() != null)

            elementG2?.AddElementDependency(elementG1);

        if (elementG2?.GetRaw() != null && elementG3?.GetRaw() != null)

            elementG3?.AddElementDependency(elementG2);

        if (elementG3?.GetRaw() != null && elementG4?.GetRaw() != null)

            elementG4?.AddElementDependency(elementG3);

        if (elementG4?.GetRaw() != null && elementG5?.GetRaw() != null)

            elementG5?.AddElementDependency(elementG4);

        if (elementG5?.GetRaw() != null && elementG6?.GetRaw() != null)

            elementG6?.AddElementDependency(elementG5);

        if (elementG6?.GetRaw() != null && elementG7?.GetRaw() != null)

            elementG7?.AddElementDependency(elementG6);

        if (elementG7?.GetRaw() != null && elementG8?.GetRaw() != null)

            elementG8?.AddElementDependency(elementG7);

        if (elementG8?.GetRaw() != null && elementG9?.GetRaw() != null)

            elementG9?.AddElementDependency(elementG8);

        if (elementG9?.GetRaw() != null && elementG10?.GetRaw() != null)

            elementG10?.AddElementDependency(elementG9);

        

        var elementG12 = projectFiles.UnityLibraryBuildGradle.Android.PackagingOptions.AddExclude("('/lib/armeabi/*' + '*')");

        var elementG13 = projectFiles.UnityLibraryBuildGradle.Android.PackagingOptions.AddExclude("('/lib/mips/*' + '*')");

        var elementG14 = projectFiles.UnityLibraryBuildGradle.Android.PackagingOptions.AddExclude("('/lib/mips64/*' + '*')");

        var elementG15 = projectFiles.UnityLibraryBuildGradle.Android.PackagingOptions.AddExclude("('/lib/x86/*' + '*')");

        var elementG16 = projectFiles.UnityLibraryBuildGradle.Android.PackagingOptions.AddExclude("('/lib/x86_64/*' + '*')");

        var elementG17 = new Element($"// Android Resolver Repos Start");

        projectFiles.UnityLibraryBuildGradle.AddElement(elementG17);

        var elementG18 = new Block("([rootProject] + (rootProject.subprojects as List)).each");

        elementG18.SetRaw($"ext {{\n" +

        $"    it.setProperty(\"android.useAndroidX\", true)\n" +

        $"    it.setProperty(\"android.enableJetifier\", true)\n" +

        $"}}");

        projectFiles.UnityLibraryBuildGradle.AddElement(elementG18);

        var elementG19 = new Block("([rootProject] + (rootProject.subprojects as List)).each");

        elementG19.SetRaw($"project ->\n" +

        $"   project.repositories {{\n" +

        $"       def unityProjectPath = $/file:///{templatedValueG20}/$.replace(\"\\\\\", \"/\")\n" +

        $"       maven {{\n" +

        $"           url \"https://maven.google.com\"\n" +

        $"       }}\n" +

        $"       maven {{\n" +

        $"           url \"https://unity3ddist.jfrog.io/artifactory/unity-mediation-mvn-prod-local/\" // Assets/Editor/MediationAdapterDependencies.xml:8\n" +

        $"       }}\n" +

        $"       maven {{\n" +

        $"           url \"https://android-sdk.is.com\" // Assets/Editor/MediationAdapterDependencies.xml:8\n" +

        $"       }}\n" +

        $"       maven {{\n" +

        $"           url \"https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea\" // Assets/Editor/MediationAdapterDependencies.xml:8\n" +

        $"       }}\n" +

        $"       mavenLocal()\n" +

        $"       jcenter()\n" +

        $"       mavenCentral()\n" +

        $"   }}");

        projectFiles.UnityLibraryBuildGradle.AddElement(elementG19);

        var elementG21 = new Element($"// Android Resolver Repos End");

        projectFiles.UnityLibraryBuildGradle.AddElement(elementG21);

        var elementG22 = new Element($"// Android Resolver Exclusions Start");

        projectFiles.UnityLibraryBuildGradle.AddElement(elementG22);

        var elementG23 = new Element($"// Android Resolver Exclusions End");

        projectFiles.UnityLibraryBuildGradle.AddElement(elementG23);

        var elementG24 = (Android)projectFiles.UnityLibraryBuildGradle.GetElements().First(e => e is BaseBlock block && block.GetRaw() == $"ndkPath \"**NDKPATH**\"\n" +

        $"namespace \"com.unity3d.player\"\n" +

        $"compileSdkVersion **APIVERSION**\n" +

        $"buildToolsVersion \"**BUILDTOOLS**\"\n" +

        $"compileOptions {{\n" +

        $"    sourceCompatibility JavaVersion.VERSION_11\n" +

        $"    targetCompatibility JavaVersion.VERSION_11\n" +

        $"}}\n" +

        $"defaultConfig {{\n" +

        $"    minSdkVersion **MINSDKVERSION**\n" +

        $"    targetSdkVersion **TARGETSDKVERSION**\n" +

        $"    ndk {{\n" +

        $"        abiFilters **ABIFILTERS**\n" +

        $"    }}\n" +

        $"    versionCode **VERSIONCODE**\n" +

        $"    versionName \"**VERSIONNAME**\"\n" +

        $"    consumerProguardFiles \'proguard-unity.txt\'**USER_PROGUARD**\n" +

        $"    **DEFAULT_CONFIG_SETUP**\n" +

        $"}}\n" +

        $"lintOptions {{\n" +

        $"    abortOnError false\n" +

        $"}}\n" +

        $"aaptOptions {{\n" +

        $"    noCompress = **BUILTIN_NOCOMPRESS** + unityStreamingAssets.tokenize(\', \')\n" +

        $"    ignoreAssetsPattern = \"!.svn:!.git:!.ds_store:!*.scc:!CVS:!thumbs.db:!picasa.ini:!*~\"\n" +

        $"}}\n" +

        $"**PACKAGING_OPTIONS**");

        elementG24?.RemoveAllElementDependencies();

        if (elementG21?.GetRaw() != null && projectFiles.UnityLibraryBuildGradle.ApplyPluginList?.GetRaw() != null)

            projectFiles.UnityLibraryBuildGradle.ApplyPluginList?.AddElementDependency(elementG21);

        if (elementG22?.GetRaw() != null && projectFiles.UnityLibraryBuildGradle.Android?.GetRaw() != null)

            projectFiles.UnityLibraryBuildGradle.Android?.AddElementDependency(elementG22);

        if (elementG17?.GetRaw() != null && elementG18?.GetRaw() != null)

            elementG18?.AddElementDependency(elementG17);

        if (elementG18?.GetRaw() != null && elementG19?.GetRaw() != null)

            elementG19?.AddElementDependency(elementG18);

        if (elementG19?.GetRaw() != null && elementG21?.GetRaw() != null)

            elementG21?.AddElementDependency(elementG19);

        if (projectFiles.UnityLibraryBuildGradle.Dependencies?.GetRaw() != null && elementG22?.GetRaw() != null)

            elementG22?.AddElementDependency(projectFiles.UnityLibraryBuildGradle.Dependencies);

        if (projectFiles.UnityLibraryBuildGradle.Android?.GetRaw() != null && elementG23?.GetRaw() != null)

            elementG23?.AddElementDependency(projectFiles.UnityLibraryBuildGradle.Android);

        if (elementG23?.GetRaw() != null && elementG24?.GetRaw() != null)

            elementG24?.AddElementDependency(elementG23);

    }
}


Ответы (1 шт):

Автор решения: SHVEYNIK

Есть решение: я просто удалил текст в скрипте ModifyProjectScript, сохранил и всё скомпилировалось (возможно можно удалить сам скрипт, но я не проверял).

→ Ссылка