我使用codenameone创建j2me应用程序,它在诺基亚手机中运行良好,但我想在三星设备上安装或运行它(例如S8300)我会收到错误。
如何解决此错误?
我搜索了这个设备的详细信息,我发现它没有operting系统,但它可以用MIDP2.0运行java。我可以为这些设备类型做些什么?如何在这些设备上运行它?
提前致谢。
答案 0 :(得分:1)
有些事情可能是问题所在:
1)jar文件很大。 Java设备经常限制jar文件的最大大小,其中一些令人难以置信的小。尝试安装一个较小的jar文件,就像一个hello world。 如果这是问题,请确保使用“obfuscate”,因为它还会从jar文件中删除未使用的代码。
2)根据运营商品牌,三星设备通常不允许直接从PC安装jar文件(使用蓝牙或USB线): - (
唯一可行的是OTA-Download。在那里你需要创建一个jad文件和一个jar文件,将它们放在web服务器上,然后在设备的移动浏览器中调用jad中的url。
您需要更改内部的MIDlet-Jar-URL
以获取Web服务器上jar文件的绝对URL。
这一切都非常复杂。要检查您的网络服务器是否正确设置并且该jad文件没有语法错误,您可以使用我的jad检查器: jadcheck.appspot.com
答案 1 :(得分:1)
检查您是否使用Java 5语言功能,并根据java.util等类限制自己使用CLDC 1.1 API规范。
Codename One包括对这些功能的支持,这些功能在诺基亚上运行良好,其中VM更兼容,但在使用这些功能时在某些设备上失败。
答案 2 :(得分:0)
我们必须通过不使用lwuit或codenameone设计师的硬编码来创建UI。 一些没有操作系统且只支持MIDP的设备的原因不能运行由lwuit或codenameone desiner创建的这类应用程序。
可能导致设备中的资源文件路径!