6

新しい Google マップ 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 Service バインディングを削除してマップすると、機能します。

助けてくれる人?

編集:解決策を見つけました:リンクをなしに設定します。しかし、apkファイルが大きくなったので、「SDKアセンブリのみ」に設定されたリンクで動作するようにしたいと思います。

4

1 に答える 1

0

このエラー メッセージの最も一般的な原因は、次の記事で説明されているように、不適切な Android SDK ターゲット バージョンを使用している場合です。 my-android-build-fail-with-error-executing-task-linkassemblies-error-xa2006-

これを修正するには、ここに示されている正しいターゲットに更新する必要があります: https://developer.xamarin.com/guides/xamarin-forms/getting-started/installation/#Android

さらに、Xamarin.Android が更新されるたびに、これらのターゲットも更新される可能性があるため、正しいバージョンを「今日」に設定したとしても、後で更新すると、後で再度更新する必要がある場合があります。

(PS ガイドは Xamarin.Forms に固有のものですが、これらのターゲットは基になる Xamarin.Android ツールから継承されるため、実際に Forms を使用していなくても Xamarin.Android のみを使用している場合でも、これらの設定は通常同じである必要があります )

于 2016-04-12T00:31:52.637 に答える