Unity3d 尝试使用il2cpp构建Unity项目时引发错误

Unity3d 尝试使用il2cpp构建Unity项目时引发错误,unity3d,mono,apk,il2cpp,Unity3d,Mono,Apk,Il2cpp,我如何解决这个问题? 除了MONO,一切都进展顺利 我的Unity版本是2021.1.9f1 Exception: Failed running C:\Program Files\Unity\Hub\Editor\2021.1.9f1\Editor\Data\il2cpp\build/deploy/netcoreapp3.1/UnityLinker.exe @"C:/Users/Professional/Fruit Nightmare/Temp/StagingArea/assets/b

我如何解决这个问题? 除了MONO,一切都进展顺利 我的Unity版本是2021.1.9f1

Exception: Failed running C:\Program Files\Unity\Hub\Editor\2021.1.9f1\Editor\Data\il2cpp\build/deploy/netcoreapp3.1/UnityLinker.exe @"C:/Users/Professional/Fruit Nightmare/Temp/StagingArea/assets/bin/Data/Managed/response.rsp"

stdout:
Fatal error in Unity CIL Linker
Mono.Linker.LinkerFatalErrorException: ILLink: error IL1005: GoogleMobileAds.Api.MobileAds.GetClientFactory(): Error processing method 'GoogleMobileAds.Api.MobileAds.GetClientFactory()' in assembly 'GoogleMobileAds.dll'
 ---> System.InvalidOperationException: No action for the assembly GoogleMobileAds.Unity, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null defined
   at Mono.Linker.AnnotationStore.GetAction(AssemblyDefinition assembly)
   at Mono.Linker.Steps.MarkStep.MarkCustomAttributes(ICustomAttributeProvider provider, DependencyInfo& reason, IMemberDefinition sourceLocationMember)
   at Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference, DependencyInfo reason, IMemberDefinition sourceLocationMember)
   at Mono.Linker.Steps.MarkStep.MarkTypeVisibleToReflection(TypeReference reference, DependencyInfo reason, IMemberDefinition sourceLocationMember)
   at Mono.Linker.Dataflow.ReflectionMethodBodyScanner.<>c__DisplayClass20_4.<HandleCall>b__7()
   at Mono.Linker.Dataflow.ReflectionPatternContext.RecordRecognizedPattern(IMemberDefinition accessedItem, Action mark)
   at Mono.Linker.Dataflow.ReflectionMethodBodyScanner.HandleCall(MethodBody callingMethodBody, MethodReference calledMethod, Instruction operation, ValueNodeList methodParams, ValueNode& methodReturnValue)
   at Mono.Linker.Dataflow.MethodBodyScanner.HandleCall(MethodBody callingMethodBody, Instruction operation, Stack`1 currentStack)
   at Mono.Linker.Dataflow.MethodBodyScanner.Scan(MethodBody methodBody)
   at Mono.Linker.Dataflow.ReflectionMethodBodyScanner.ScanAndProcessReturnValue(MethodBody methodBody)
   at Unity.Linker.Steps.UnityMarkStep.MarkReflectionLikeDependencies(MethodBody body, Boolean requiresReflectionMethodBodyScanner)
   at Mono.Linker.Steps.MarkStep.MarkMethodBody(MethodBody body)
   at Unity.Linker.Steps.UnityMarkStep.MarkMethodBody(MethodBody body)
   at Mono.Linker.Steps.MarkStep.ProcessMethod(MethodDefinition method, DependencyInfo& reason)
   at Unity.Linker.Steps.UnityMarkStep.ProcessMethod(MethodDefinition method, DependencyInfo& reason)
   at Mono.Linker.Steps.MarkStep.ProcessQueue()
   --- End of inner exception stack trace ---
   at Mono.Linker.Steps.MarkStep.ProcessQueue()
   at Mono.Linker.Steps.MarkStep.ProcessPrimaryQueue()
   at Mono.Linker.Steps.MarkStep.Process()
   at Mono.Linker.Steps.MarkStep.Process(LinkContext context)
   at Unity.Linker.Steps.UnityMarkStep.Process(LinkContext context)
   at Unity.Linker.UnityPipeline.ProcessStep(LinkContext context, IStep step)
   at Mono.Linker.Pipeline.Process(LinkContext context)
   at Unity.Linker.UnityDriver.UnityRun(ILogger customLogger)
   at Unity.Linker.UnityDriver.RunDriverWithoutErrorHandling(ILogger customLogger)
   at Unity.Linker.UnityDriver.RunDriver()
stderr:

// Here more error text
异常:未能运行C:\Program Files\Unity\Hub\Editor\2021.1.9f1\Editor\Data\il2cpp\build/deploy/netcoreapp3.1/UnityLink.exe@“C:/Users/Professional/Fruit噩梦/Temp/StaginArea/assets/bin/Data/Managed/response.rsp”
标准:
Unity CIL链接器中存在致命错误
Mono.Linker.LinkerCatalErrorException:ILLink:error IL1005:GoogleMobileAds.Api.MobileAds.GetClientFactory():程序集“GoogleMobileAds.dll”中的错误处理方法“GoogleMobileAds.Api.MobileAds.GetClientFactory()”
--->System.InvalidOperationException:未对程序集GoogleMobileAds.Unity执行任何操作,版本=0.0.0.0,区域性=中立,PublicKeyToken=null已定义
位于Mono.Linker.AnnotationStore.GetAction(AssemblyDefinition程序集)
在Mono.Linker.Steps.MarkStep.MarkCustomAttributes(ICustomAttributeProvider提供程序、DependencyInfo和reason、IMemberDefinition sourceLocationMember)
在Mono.Linker.Steps.MarkStep.MarkType(TypeReference引用、DependencyInfo原因、IMemberDefinition sourceLocationMember)
在Mono.Linker.Steps.MarkStep.MarkTypeVisibleToReflection(TypeReference引用、DependencyInfo原因、IMemberDefinition sourceLocationMember)
在Mono.Linker.Dataflow.ReflectionMethodBodyScanner.c__DisplayClass20_4.b_u 7()中
位于Mono.Linker.Dataflow.ReflectionPatternContext.RecordRecognitizedPattern(IMemberDefinition accessedItem,操作标记)
位于Mono.Linker.Dataflow.ReflectionMethodBodyScanner.HandleCall(MethodBody调用MethodBody,MethodReference调用MethodMethod,指令操作,ValueNodeList methodParams,ValueNode和methodReturnValue)
位于Mono.Linker.Dataflow.MethodBodyScanner.HandleCall(MethodBody调用MethodBody,指令操作,堆栈`1 currentStack)
在Mono.Linker.Dataflow.MethodBodyScanner.Scan(MethodBody-MethodBody)中
位于Mono.Linker.Dataflow.ReflectionMethodBodyScanner.ScanAndProcessReturnValue(MethodBody方法体)
在Unity.Linker.Steps.UnityMarkStep.MarkReflectionLikeDependencies(MethodBody主体,布尔要求ReflectionMethodBodyScanner)
在Mono.Linker.Steps.MarkStep.MarkMethodBody(MethodBody body)处
在Unity.Linker.Steps.UnityMarkStep.MarkMethodBody(MethodBody)处
位于Mono.Linker.Steps.MarkStep.ProcessMethod(MethodDefinition方法、DependencyInfo和reason)
位于Unity.Linker.Steps.UnityMarkStep.ProcessMethod(MethodDefinition方法、DependencyInfo和reason)
在Mono.Linker.Steps.MarkStep.ProcessQueue()中
---内部异常堆栈跟踪的结束---
在Mono.Linker.Steps.MarkStep.ProcessQueue()中
在Mono.Linker.Steps.MarkStep.ProcessPrimaryQueue()中
在Mono.Linker.Steps.MarkStep.Process()中
位于Mono.Linker.Steps.MarkStep.Process(LinkContext)
位于Unity.Linker.Steps.UnityMarkStep.Process(链接上下文)
位于Unity.Linker.unitypepeline.ProcessStep(LinkContext上下文,IStep步骤)
在Mono.Linker.Pipeline.Process(LinkContext)上
在Unity.Linker.UnityDriver.UnityRun(ILogger customLogger)
在Unity.Linker.UnityDriver.RunDriverWithoutErrorHandling(ILogger customLogger)处
位于Unity.Linker.UnityDriver.RunDriver()处
标准:
//这里有更多的错误文本

我正在尝试将一个项目构建到apk文件中,以便在Google Play上发布

您使用的是哪个版本的Google Mobile Ads Unity插件

问题来自谷歌移动广告统一插件版本v6.0.0。我尝试用以前的版本5.4.0v构建项目,并且构建正确

我可以看到越来越多的人有同样的问题,我想他们已经在努力解决这个问题了


我受这个问题困扰了一个星期,最终改用Unity广告