繁体   English   中英

是否建议始终为Xamarin项目选择目标AnyCPU?

[英]Is it advised to choose always the target AnyCPU for Xamarin projects?

当尝试使用AnyCPU以外的其他目标时,出现了更多错误,并且依赖项更难以解决。

但是当选择AnyCPU目标时,我得到的错误更少。

是否建议始终为Xamarin项目选择此目标?

让我们澄清一下。

Xamarin项目是一个非常通用的术语,因此没有特别的含义。 为了与“平台”因素保持友好,您必须分别查看所有三个平台。

首先,请记住,您的C#源代码已由Microsoft .NET编译器(例如,Roslyn)编译为IL(中间语言)。 平台规范尚未使用。 那时,它只是元数据。 后来,代码从IL编译为平台特定的代码。 那就是真正使用平台规范的时候。

  1. Microsoft Windows (此处是指Windows 8.1 / Windows Phone 8.1(WinRT通用应用程序)和Windows 10 / Windows Phone 10(UWP))。 对所有项目使用AnyCPU 在后台,当您构建要分发的软件包时,将为Phone软件包选择除AnyCPU之外的特定平台。 您不必为此担心。

  2. Google Android 事情变得有些棘手。 您制作的所有类库都可以为AnyCPU和Startup项目配置, 但这与特定于平台的实际编译和链接无关。 就Visual Studio元数据而言,这只是一个配置组,仅此而已。 实际配置位于启动项目配置页Android options -> Advanced的单独选项卡上。 目前,我实际写的是armeabi-v7a + x86

  3. 苹果iOS 现在这很棘手,甚至很奇怪。 您使用的所有类库都可以为AnyCPU配置,但这只是一个配置组以及android。 同样,与android相同,实际的编译和链接将使用启动项目属性中使用平台特定的配置进行。 现在是iOS Build -> Advanced 目前,我正在使用ARMv7 + ARM64进行分发(iPhone平台选项),使用i386 + x86_64进行开发(iPhoneSimulator平台选项)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM