单机器人谷歌地图v2 - "LinkAssemblies"任务意外失败



我正在monodroid中使用新的谷歌地图v2制作一个应用程序。我为Google Play服务创建了一个绑定,并使用了它。当我处于调试模式时,一切都很好,但在发行版中,我得到了以下错误:

System.Exception: The "LinkAssemblies" task failed unexpectedly.
Mono.Cecil.ResolutionException: Failed to resolve Android.App.Fragment at
Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference) at
Mono.Linker.Steps.MarkStep.MarkType(TypeReference reference) at
Mono.Linker.Steps.MarkStep.InitializeType(TypeDefinition type) at
Mono.Linker.Steps.MarkStep.InitializeAssembly(AssemblyDefinition assembly) at
Mono.Linker.Steps.MarkStep.Initialize() at Mono.Linker.Steps.MarkStep.Process(LinkContextcontext) at
Mono.Linker.Pipeline.Process(LinkContext context) at
MonoDroid.Tuner.Linker.Process(LinkerOptions options, LinkContext& context) at
Xamarin.Android.Tasks.LinkAssemblies.Execute() at
Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execue()
at Microsoft.Build.BackEnd.TaskBuilder.d__20.MoveNext()

如果我删除Google Play服务绑定并映射,它就可以工作了。

谁能帮忙?

编辑:我找到了一个解决方案:将链接设置为无。但我希望它能将集链接到"仅SDK程序集",因为apk文件现在变得太大了。

此错误消息最常见的原因是您使用了不正确的Android SDK目标版本,如本文所述:https://kb.xamarin.com/customer/en/portal/articles/1902736-why-does-my-android-build-fail-with-error-executing-task-linkassemblies-error-xa2006-

要解决此问题,您需要更新到正确的目标,如下所示:https://developer.xamarin.com/guides/xamarin-forms/getting-started/installation/#Android

此外,作为Xamarin.Android不时更新;这些目标也可能更新,所以即使你在"今天"设置了正确的版本,如果你稍后更新,你可能不得不在以后再次更新它们。

(附言:尽管该指南是特定于Xamarin.Forms的,但这些目标是从底层的Xamarin.Android工具继承而来的,因此即使您实际上没有使用Forms,这些设置也应该是相同的,但只是Xamarin.Android。)

最新更新