为了让MonoGame编写的代码能跨平台编译运行要注意资源文件(Content目录中文件)的命名,错误的命名会出现意想不到,甚至莫名其妙的错误。比如名字带了特殊字符“+”号就会导致在iOS平台出现The “CollectBundleResources” task failed unexpectedly.错误。在windows平台却没有问题。

MonoGame开发手机游戏最大的缺陷是安装包太大。小游戏打包后的尺寸基本都在20MB以上。造成包大的原因是资源文件。比如:一个png文件编译成xnb以后体积会增大好几倍。所以为了压缩安装包的尺寸可以放弃使用xnb作为资源文件,可以直接使用png文件。方法是用TitleContainer代替Content加载资源。

iOS平台使用Microsoft.Devices.Sensors.Accelerometer制作重力感应游戏要注意plist文件中屏幕方向的设置。如果游戏使用了上下左右四个方向重力加速度,那么取消plist文件中任何一个方向会造成游戏闪退。Debug过程中很难找到崩溃原因。所以要注意这个细节。