libgdx html 跨平台的坑

本文记录了将libgdx Java项目移植到HTML时遇到的挑战,包括GWT不支持的多线程和反射机制问题,以及protobuf jar的引用问题。通过JSNI实现Java与JS的交互来处理网络交互,解决了多线程和反射问题。同时,删除不兼容的IO相关代码使GWT能够编译发布。
摘要由CSDN通过智能技术生成

跨平台各种坑,记录下这几天搞libgdx java项目转html的坑。


1.下载最新的libgdx 客户端 release 1.6.2,需要支持 jdk 1.7.0 版本。搞一个demo呗,ok,一会就成功了。android 和 html 都能成功发布,太简单了(坑总是隐藏在你不知道的地方,掉下去才知道)

2.那就把写好的libgdx core项目发布html吧....于是发现了各种坑:

A .libgdx html 是使用 gwt来支持的,所以 gwt 不支持的特性 libgdx html 也支持不了 ,比如说 多线程,比如说 java 反射机制,原本的core项目中有很多这种调用的地方。改改改。。。

B. 引用jar包 的路径找不到。libgdx 的jar 都有一个配置的xml 说明文档,我引用的protobuf jar没有,照着写一个?--没有成功。于是从github上 搞来protobuf源码,放在core目录下面。 再跑,发现 protobuf 中也用到了 java反射机制,给跪。。。。

C 在发布的过程中还发现了一些小bug 比如:Syntax error on token "Invalid Character", delete this token  找到相应的类文件,把他编码设置成us-ascii ,发现 package前面有一些乱码,删掉。重新跑还是报错。。。

D Exception IOException is not compatible with throws clause in FilterInputStream.available() 有一些 IO 相关的好像也是不支持的。


反正我最后是跪了,555555555555555555.。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值