首页 > 代码库 > unity3d游戏无法部署到windows phone8手机上的解决方法
unity3d游戏无法部署到windows phone8手机上的解决方法
今天搞了个unity3d游戏,准备部署到自己的lumia 920上,数据线连接正常,操作正常,但是“build”以后,始终无法部署到手机上,也没有在选择的目录下生产任何相关文件。
但是提示有一个错误:
Error building Player: Exception: Error: method `System.Byte[] System.IO.File::ReadAllBytes(System.String)` doesn‘t exist in target framework. It is referenced from Assembly-CSharp.dll at System.Byte[] NGUITools::Load(System.String).
意思是NGUITools.cs里面的Load()方法有问题,导致无法部署。
解决方案:找到NGUITools.cs,找到Load()方法。代码如下:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | /// <summary> /// Load all binary data from the specified file. /// </summary> static public byte [] Load ( string fileName) { #if UNITY_WEBPLAYER || UNITY_FLASH return null ; #else if (!NGUITools.fileAccess) return null ; string path = Application.persistentDataPath + "/" + fileName; if (File.Exists(path)) { return File.ReadAllBytes(path); } return null ; #endif } |
只要在#if UNITY_WEBPLAYER || UNITY_FLASH后面加个“UNITY_WP8”就可以了。
完整代码:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | /// <summary> /// Load all binary data from the specified file. /// </summary> static public byte [] Load ( string fileName) { #if UNITY_WEBPLAYER || UNITY_FLASH||UNITY_WP8 return null ; #else if (!NGUITools.fileAccess) return null ; string path = Application.persistentDataPath + "/" + fileName; if (File.Exists(path)) { return File.ReadAllBytes(path); } return null ; #endif } |
之后,按照部署步骤,Build以后就可以看到游戏安装到手机上了。
参考资料:
http://www.tasharen.com/forum/index.php?topic=6625.0
unity3d部署到wp手机:
http://game.ceeger.com/Manual/wp8-deployment.html
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。