Unity3D Webplayer Socket网络通信经验分享

Unity3D Webplayer发布时,由于安全沙箱的问题,在Socket通信、Dll引用时会遇到一些麻烦,

但最终证明:Unity3D Webplayer模式下,完全可以使用Socket 通信和 自己编写的Dll(使用VS C#类库创建的Dll),但要注意以下方面。

1、Socket通信程序与C# Win32程序无差别,但不能使用System.Runtime.*  System.Reflection.*  System.Threading等命名空间下的类,超过.net framework 2.0的类库也不能用。

2、引用自编的dll文件,dll中也不能使用System.Runtime.*  System.Reflection.*  System.Threading等命名空间下的类。

3、Socket通信数据传输可以使用JSON格式对数据进行序列化和反序列化, 但在WebPlayer模式下JSON.net类库无法使用,可以使用MiniJson等类代替。

4、WebPlayer模式下,必须要进行策略验证,可以参见帮助文档,否则无法通信。

http://www.xuanyusong.com/archives/1948 这边博客关于Socket和Http通信讲的很好,可以参考,但其代码无法移植到WebPlayer模式,根据以上思路,相信你一定可以搞定! 

PS:

尤其是想在WebPlayer下使用System.Threading.Timer,就不用想了!

当然,比较好用的.NET Remoting也是无法应用咯。

posted @ 2014-12-20 22:18  酒香不怕巷子深  阅读(564)  评论(0编辑  收藏  举报