2013-08-21 10 views
6

Tworzę aplikację w monodroidie, używając nowych Map Google v2. Stworzyłem powiązanie usługi Google Play i użyłem go. To wszystko działa dobrze, gdy jestem w trybie debugowania, ale w wydaniu mi się następujący błąd:Monodroid Google Maps v2 - Zadanie "LinkAssemblies" nieoczekiwanie się nie powiodło

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() 

Jeśli usunąć usługę Google Play wiążące i map to działa.

Ktoś, kto może pomóc?

EDYCJA: Znalazłem rozwiązanie: ustawianie łączenia z brakiem. Ale spodoba mi się praca nad ustawieniami łączenia tylko z "zestawami SDK", ponieważ plik APK staje się teraz duży.

+0

Jakiej wersji Xamarin.Android używasz? Podobna rzecz przydarzyła mi się, gdy jeden z projektów, do których się odwołałem, został zbudowany w nowszej wersji niż rozwiązanie. – manadart

+1

Użyłem Xamarin.Android 4.8.0 2 skompilować oba projekty. Mogę go zbudować z zestawem łączącym do none. Ale chciałby, aby działał na łączu ustawionym na "tylko zestawy SDK". – Casper

+0

Proszę włączyć szczegółowe wyniki kompilacji w Visual Studio (np. Diagnostyka, przeczytaj tutaj http://elbruno.com/2015/01/06/vs2015-howto-show-more-detail-in-a-local-build-in- the-visual-studio-ide /) i dodaj tę informację do pytania (na przykład publikując ją na http://gist.github.com) –

Odpowiedz

0

Najczęstszą przyczyną tego komunikatu o błędzie jest, jeśli używasz niewłaściwych Android wersje docelowych SDK, jak opisane w tym artykule: https://kb.xamarin.com/customer/en/portal/articles/1902736-why-does-my-android-build-fail-with-error-executing-task-linkassemblies-error-xa2006-

Aby rozwiązać ten problem, należy zaktualizować do odpowiednich celów, które są pokazano tutaj: https://developer.xamarin.com/guides/xamarin-forms/getting-started/installation/#Android

Dodatkowo, od czasu do czasu jako Xamarin.Android jest aktualizowany; te cele również mogą się aktualizować, więc nawet jeśli ustawisz poprawną wersję "dziś", jeśli zaktualizujesz ją później, być może będziesz musiał je zaktualizować ponownie.

(PS Nawet jeśli ten przewodnik jest specyficzny dla Xamarin.Forms, cele te są dziedziczone z podstawowych narzędzi Xamarin.Android, więc te ustawienia powinny być zasadniczo takie same, nawet jeśli faktycznie nie używasz Forms, ale tylko Xamarin.Android.)