开发现代 J2ME 应用程序的最佳方式是什么?

Chi*_*ata 5 html user-interface java-me

我一直很困惑决定如何继续设计 J2ME 应用程序的 UI。基本上我已经完成了算法、函数和数据库的工作,但我无法为其提供一个好的 UI。我有两个想法:

  1. 使它成为一个 j2me 应用程序,它将轻松帮助我利用网络压缩技术来实现快速和廉价的互联网访问(核心需求)。

  2. 使它成为一个网络应用程序并使它成为一种浏览器应用程序,它只会加载在线应用程序。显然,此选项使您不必太担心升级和 UI 功能,但互联网成本和速度是限制因素。

我正在尝试采用第一个选项,我采用的第一种方法是 LWUIT,但随着时间的推移,它变得很重,我什至无法调试应用程序,更不用说在小型手机上部署它了。事实上,在线搜索使问题变得更糟。似乎对 J2ME 应用程序的兴趣急剧下降,大多数谈论它已经过时了。事实上,很多人确实问过我同样的问题,我在网上看到非常具有视觉吸引力的 J2ME 应用程序,但我似乎无法弄清楚它们的“秘密”

SO ,我想从谁开发了有人听好看J2ME应用程序?开发一款外观漂亮的小应用程序的最佳方法是什么? 具体来说,我想要有用的工具和相关文章的链接。谢谢!!


编辑:当前的发展...

在对如何最好地开发标准的现代J2ME 应用程序进行了长时间的思考和研究后,我突然意识到最好的选择是统一平台,也许可以让我轻松地将 HTML5 应用程序移植到 J2ME。然而,到目前为止,我的搜索是徒劳的。我发现的唯一有趣的东西是CodeNameOneJava 的 Avatar One。然而,CodeNameOne 并没有真正提供我正在寻找的解决方案,而甲骨文似乎仍然忙于 Avatar One一年多。我想知道我是否遗漏了什么。看到了开源 LWUIT 的功能,我认为开发一个 HTML5 渲染器不会太困难,它有助于将基于 HTML5 的应用程序移植到 J2ME,同时对 HTML5 有很好的理解。那么有什么我想念的吗?我可以参与的任何正在进行的开源项目或其他什么?

谢谢!

mic*_*ert 4

经历过我之前在这里建议的内容后,我不一定推荐它,但你问了。


如果您想要一个看起来像使用 LWUIT 开发的应用程序一样好,但在较小的 jar 文件中,并且更易于调试,一种解决方案是根据在 LCDUI 上绘制的基本几何形状和图像来开发 GUI Canvas

为了实现这 3 个目标,您将牺牲可扩展性和开发时间。

GUI 将变得更容易调试,因为您将在编写代码时学习代码,而不必学习 LWUIT。

您要么尽早花时间设计 GUI 引擎,要么稍后花更多时间重写代码。

将应用程序移植到不同的屏幕尺寸将比使用 LWUIT 需要更多的工作。

如果其他人使用您的代码,您将必须教他们它是如何工作的。

任何 GUI 修改都可能意味着必须更新底层代码以添加或删除组件。

GUI 的通用性越差,应用程序 jar 就越小。您可能最终会为了减小应用程序的大小而放弃面向对象编程的一些好处。


就现代方法而言,JavaME 并不真正适合测试驱动开发方法,但有一种近似方法可以带来一些好处。

编写许多小型测试 MIDlet。它们中的每一个最多具有一种可能的用户交互。它们都共享算法、多线程、存储、网络的通用引擎代码......

通用代码将在最终产品中使用。

一旦你完成了所有的“单元测试”,就开始将它们组合起来。每个组合仅用于测试 2 个较小的功能集之间的交互。

制作一个更大的 MIDlet 金字塔并一路测试它们。

金字塔的顶部是您一直想要生成的 MIDlet。


遗憾的是,大多数 JavaME 测试都是手动完成的。

有两种方法可以对 MIDlet 执行一些自动化测试。

  • 使用 Keynote Device Anywhere 脚本编写工具。设置此功能将非常耗时,并且使用该服务不是免费的,但测试是在尽可能接近真实世界条件的情况下进行的,而无需购买手机及其 SIM 卡。

  • 使用 Microemulator 的源代码并对其进行修改,以便自动运行测试 MIDlet 并报告测试结果,大概作为 Jenkins 实例的一部分。使 Microemulator 适应您的需求可能不是一项简单的开发任务,您需要先测试新的自动化系统,然后才能在 MIDlet 上运行第一个测试。