ExEn是在不同平台(包括 iOS 和 Android)上运行的 XNA API子集的实现。简而言之,它使您在编写 XNA 代码时使用的类和方法可以在这些其他平台上使用。(加上适当的说明、示例等)
使用 ExEn 时,您的大部分代码应该只是“正常工作”。然而,在大多数实际情况下,您至少需要编写一些特定于平台的代码(并且可能提供一些特定于平台的资产)。特别是支持不同的设备分辨率,以及在您使用 ExEn 中不可用的 XNA 功能的情况下。
在撰写本文时,ExEn 没有为加速计支持实现 XNA/WP7 API。在未来的某个时候,它们可能会被添加(由我或任何想要贡献补丁的人)。ExEn 作为源代码分发,因此您甚至可以自己添加必要的支持。
另一种方法是为查询加速度计的游戏部分编写特定于平台的代码。使用 ExEn 并不妨碍您同时使用底层平台的 API。
ExEn(在 iOS 和 Android 上)运行在Xamarin 的MonoTouch 和 Mono for Android 产品之上。这两个产品为底层平台 API 提供 C# 绑定。此外,与 ExEn 实现 XNA API 很相似,Mono 实现了 .NET API。这些产品还为您提供所需的工具(IDE、编译器、调试器等)。
因此,您将使用的 iOS API 是UIAccelerometer
( doc )。这通过MonoTouch.UIKit.UIAccelerometer
( doc ) 在 C# 中公开。我将把查找 Android 等效项作为练习。