unit3d引入protobuf库,产生的怪异问题
我做的程序,客户端是用unity3d写的,服务器端是centos下用c++写的,
客户端与服务器端之前采用xml的格式相互传递消息,游戏基本功能都是正常的。
现在改为protobuf的序列化功能来传递消息,
完成protobuf的替换工作后,在开发用的pc机上用unity3d运行客户端,以及使用xocde运行客户端,都能够正常运行。
可是放到真实的iphone设备上以后,莫名其妙的消息丢失,
比如登陆过程应该要发送10个交互消息,
从服务器端的日志查看,有时只发送一个,有时发送三四个。
上述问题在unity3d和xocde
都没发现,实体iphone设备一直有问题连登陆都无法完成。
请教各位大神,有什么解决思路。
unity3d版本是4.1.5,protobuf是proto-net的那个版本,
有些文章说要将“protobuf编解码在Unity Editor中运行正常,但单独部署运行抛出TypeInitializationException的问题
[*]如果发现Unity Editor中运行正常而单独运行时不正常,可以考虑将Api Compatibility Level改为.NET 2.0而不是其Subset “
这些我也试过了,都不行。显现依旧,依然是通讯 过程没有为完成。
从服务器端看日志,接受到的消息请求都回复了。
由始至终使用一个服务器,同时刻运行在unity3d测试环境下的程序都没问题。
同样的代码编译为android版本也没有问题,
怀疑:
1、怀疑过protobuf包的兼容性问题,正要着手做一个小的demo程序测试以下
2、不知道有什么unity3d的兼容性选项可以设置,或者xocde
要做什么设置?
3、实际iphone设备的运行环境和unity3d模拟有什么不同。
4、游戏替换为protobuf时,加入了大量new操作,怀疑new某个对象时失败,可是观测了以下内存,游戏在iphone上运行时,内存只是使用了100mb左右,会导致new对象失败吗?
楼主是超人 好帖就是要顶 顶顶多好 难得一见的好帖 很好哦 很不错 好帖就是要顶 顶顶多好 真心顶