Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

The "LinkAssemblies" task failed unexpectedly

When we are trying to build a xamarin forms project in release mode, we are getting the error:

C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(5,5): Error MSB4018: The "LinkAssemblies" task failed unexpectedly. Xamarin.Android.XamarinAndroidException: error XA2006: Reference to metadata item 'System.Void Android.Widget.AbsListView::SetSelectionFromTop(System.Int32,System.Int32)' (defined in 'Xamarin.Forms.Platform.Android, Version=1.3.3.0, Culture=neutral, PublicKeyToken=null') from 'Xamarin.Forms.Platform.Android, Version=1.3.3.0, Culture=neutral, PublicKeyToken=null' could not be resolved. ---> Mono.Cecil.ResolutionException: Failed to resolve System.Void Android.Widget.AbsListView::SetSelectionFromTop(System.Int32,System.Int32)    at Mono.Linker.Steps.MarkStep.MarkMethod(MethodReference reference)    at Mono.Linker.Steps.MarkStep.MarkInstruction(Instruction instruction)    at Mono.Linker.Steps.MarkStep.MarkMethodBody(MethodBody body)    at Mono.Linker.Steps.MarkStep.ProcessMethod(MethodDefinition method)    at Mono.Linker.Steps.MarkStep.ProcessQueue()    at Mono.Linker.Steps.MarkStep.Process()    at Mono.Linker.Steps.MarkStep.Process(LinkContext context)    at Mono.Linker.Pipeline.Process(LinkContext context)    at MonoDroid.Tuner.Linker.Process(LinkerOptions options, LinkContext& context)    at Xamarin.Android.Tasks.LinkAssemblies.Execute()    --- End of inner exception stack trace ---    at Xamarin.Android.Diagnostic.Error(Int32 code, Exception innerException, String message, Object[] args)    at Xamarin.Android.Tasks.LinkAssemblies.Execute()    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()    at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__20.MoveNext() (MSB4018) (XXX.Android) 

How can we resolve this? We have tried cleaning and building again. Even closing xamarin studio and restarting it. Nothing seems to work.

We are on the latest release of xamarin forms and xamarin forms labs. The minimum android API level we are using is 17. I even tried minimum sdk version 20.

Some more details:

Xamarin Studio Version 5.7 (build 661) Installation UUID: f97e711d-1fe0-450f-a3bb-2d9b972ab295 Runtime:     Microsoft .NET 4.0.30319.0     GTK+ 2.24.22 (MS-Windows theme)     GTK# 2.12.26  Xamarin.Android Version: 4.20.0 (Indie Edition) Android SDK: C:\Users\Kartik\AppData\Local\Android\android-sdk     Supported Android versions:         2.1    (API level 7)         2.2    (API level 8)         2.3    (API level 10)         3.1    (API level 12)         4.0    (API level 14)         4.0.3  (API level 15)         4.1    (API level 16)         4.3    (API level 18)         4.4    (API level 19)         4.4.87 (API level 20)         5.0    (API level 21) Java SDK: C:\Program Files (x86)\Java\jdk1.6.0_39 java version "1.6.0_39" Java(TM) SE Runtime Environment (build 1.6.0_39-b04) Java HotSpot(TM) Client VM (build 20.14-b01, mixed mode, sharing)  Build Information Release ID: 507000661 Git revision: b70bab61da996da29045ea8ee8aed1a6faedbe78 Build date: 2015-01-05 11:27:37-05 Xamarin addins: 82f6c71490562d6cd125a09287f441902fdac3d7  Operating System Windows 6.2.9200.0 (64-bit) 
like image 622
Kartik Avatar asked Feb 10 '15 04:02

Kartik


2 Answers

Apparently, this is a known issue: Xamarin Forms needs the TargetAndroidVersion to be 21. (In the config GUI, this is entitled "Compile using Android version:")

like image 179
Andy Hopper Avatar answered Oct 07 '22 12:10

Andy Hopper


In my case problem occured becasue of adding Xamarin.ios.dll to Portable Project references. I have removed that reference and it works now

like image 33
Onur Avatar answered Oct 07 '22 14:10

Onur