1

我知道对于一个WP8项目,我们必须在部署到模拟器时以Win32为目标,在部署到真机时以ARM为目标。

查看VC++ Directories,我们可以看到每个目标平台都有不同的路径。例如Library Directories

Win32

$(WP80ToolSetPath)lib
$(WindowsSDK_LibraryPath_x86)

手臂

$(WP80ToolSetPath)lib\arm
$(WindowsSDK_LibraryPath_ARM)

部署到真实设备上很棒,但并不是每个人都有机会使用真实设备。那么选择目标平台(Win32 vs ARM)会影响支持的 API 吗?(尤其是在 Windows Phone 运行时组件中)

它们之间有什么区别吗?

4

2 回答 2

0

当您的项目具有一些本机依赖项(如 SQLite)时,通常会为您的项目使用不同的目标平台。在这种情况下,您不能再使用Any CPU目标,并且需要为 Emulator(x86 目标)和设备(ARM 目标)提供不同的构建。API 或其他任何内容没有任何差异。

于 2013-07-04T09:51:29.567 回答
0

在实践中,您通常可以认为 ARM 和 Win32 的 API 相同。即代码应该在设备和模拟器上编译、链接和运行相同的代码。

两种 API 之间的主要区别在于 x86 是模拟器,ARM 是设备,它们各自具有细微的不同特性。但是,在考虑 .NET API(比如网络)时,这并没有什么不同。

(当然有不同的路径——这些是本地二进制库,所以一个目录包含 x86 库,另一个包含 ARM 库。库的文件将具有相同的名称,因此将它们放在其他目录中是一个明显的解决方案)

于 2013-07-04T10:56:26.780 回答