MonoGame在iOS上缺少数据存储IsolatedStorageSettings类的解决办法
MonoGame的价值在于可以将原XNA游戏移植到iOS和Android平台。移植基础是Xamarin。在Xamarin.iOS缺少System.IO.IsolatedStorage.IsolatedStorageSettings类。这个类通常用来存储游戏数据状态,非常重要。下面提供IsolatedStorageSettings在iOS平台的实现代码:
用C#开发跨平台游戏
MonoGame的价值在于可以将原XNA游戏移植到iOS和Android平台。移植基础是Xamarin。在Xamarin.iOS缺少System.IO.IsolatedStorage.IsolatedStorageSettings类。这个类通常用来存储游戏数据状态,非常重要。下面提供IsolatedStorageSettings在iOS平台的实现代码:
MonoGame v3.5.1 使用SoundEffect播放音频文件时会出现0x88960001错误。详细如下:
HRESULT: [0x88960001], Module: [SharpDX.XAudio2], ApiCode: [XAUDIO2_E_INVALID_CALL/InvalidCall], Message: Unknown
很明显是第三方SharpDX的问题,可能是音频文件格式也可能是其他的。
MonoGame成功打包pkg用Application Loader上传报如下错误:
MonoGame 3.5.1有一个bug。明明已经using了Microsoft.Xna.Framework.Media还是会提示:The type or namespace name ‘XXXX’ does not exist in the namespace ‘MediaPlayer’ (are you missing an assembly reference?)
MonoGame 3.5.1在iOS,Windows Phone(其他平台未测试)中使用Mouse.GetState()方式获取坐标点始终是0。这是MonoGame的一个Bug。
解决办法:
1.等官方修复,请关注MonoGame最新进展 https://github.com/MonoGame/MonoGame
2.自己下载源码修复
3.本站提供临时解决办法:
MonoGame 目前最新版未提供Windows Phone 8.0 Library的项目模板,如果有需要可以手动新建模板。步骤如下:
1.新建WP8的Library项目
1.关闭所有打开的Visual Studio.
2.打开文件管理器将%LOCALAPPDATA%\Microsoft\Phone Tools\CoreCon\复制粘贴到导航栏按回车。删除该目录的所有文件夹
本博客正式将迁移至Wordpress。原博客文章会陆续迁移至新博客。原地址继续保留,原文章URL地址只需要将www改成blog即可访问。