Xamarin Linker删除对第三方dll的引用

时间:2015-03-18 14:18:24

标签: c# android xamarin xamarin.android

在Xamarin中以发布模式运行我的应用时,我在以下方面遇到以下错误:“仅限链接SDK程序集”:

  

/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets:   错误:执行任务LinkAssemblies时出错:错误XA2006:引用   元数据项'System.IO.Ports.SerialPort'(在'EftPay中定义,   Version = 1.2.0.0,Culture = neutral,PublicKeyToken = e6147cbb02cecb0d')   来自'EftPay,版本= 1.2.0.0,文化=中立,   PublicKeyToken = e6147cbb02cecb0d'无法解析。 (MPOS)

我正在使用在类中使用SerialPort引用的第三方库(如错误中所示),但是我没有使用该特定类。有没有办法告诉链接器不要删除这个引用?

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

您是否尝试创建“使用”SerialPort类的静态类?与此类似的东西: https://github.com/MvvmCross/MvvmCross/blob/v3/nuspec/DroidContent/LinkerPleaseInclude.cs.pp

或者您可以尝试LinkSkip那个程序集

<PropertyGroup>
     <AndroidLinkSkip>Assembly1;Assembly2</AndroidLinkSkip>
</PropertyGroup>