我很久以前就学过JME,现在我正在研究Android,我想知道Java Micro Edition在哪里。
我在Google上试过,但所有链接都很旧。
有人可以提供一些链接或文档来帮助我了解JME的未来吗?
答案 0 :(得分:10)
在你的问题被问到2年后,我们现在可以说J2ME真的已经死了作为一个开发平台。
我是在J2ME上首次出现以来开发的,并且有很多原因导致该平台从一开始就注定失败:
虚拟机实施中的漏洞每个制造商都实施了自己的虚拟机和API版本,并在几年内实现了改进。有些比其他人更成功,但我们可以说每个设备都有一些错误。从开发人员的角度来看,一些非常受欢迎的设备几乎无法使用。
自定义API MIDP 1平台几乎没有可用于实现游戏的实用库 - 没有声音,没有直接访问像素。制造商创建了自己的API(诺基亚推出了最好的API,后来实际上被三星设备采用)。当MIDP 2出现时,开发人员已经在使用自定义API,并且MIDP 2和所有新库(例如声音的MMAPI)的集成进展缓慢,新的实现包含了很多错误。此外,官方API比原生API更抽象,因此有时性能更差。最后,开发人员需要支持本机API和新的MIDP2 API。
碎片地狱除了本机API造成的碎片以及官方API在不同设备上的不同支持之外,除了需要解决方法的许多实现错误之外,还有不同的屏幕地狱尺寸,声音格式的不同支持,蓝牙库(多人游戏所需),键盘与触摸显示器,尺寸限制(例如,安装包装为60-150 kB,具体取决于设备)。在2009年,我们有大约90个游戏版本来支持所有设备类。这确实增加了测试和支持的成本(同样,我们必须拥有许多设备来测试它们上的应用程序。随着许多新设备的发布,不再可能购买足够的新设备进行测试)。您可能会问我们为什么不使用模拟器进行测试。模拟器的问题在于它们中的一些非常慢(每个应用程序部署需要完全重启,例如30秒到2分钟),有些基本上是带有皮肤的通用模拟器,因此它们的行为与真实设备不同。
低利润率开发商销售J2ME应用程序的方式非常疯狂。您需要一个经销商,该经销商通常与世界各地的其他经销商签订合同,这些经销商与移动运营商签订了合同。您知道,大多数游戏都是通过移动运营商网站销售的,通过预付费计划或使用高级短信付费。从应用程序成本(可能从1美元到5美元),运营商占用了50%甚至更多。利润的另一部分是经销商。开发人员通常不到应用程序成本的10%。但是,要实际通过分发网络销售,应用程序必须支持一系列设备,因此开发人员无法避免设备碎片,也必须支持所有旧设备。
上述4个问题导致许多开发公司多年来结束,而分销商和运营商仍然赚了很多钱。该系统一直持续到苹果推出iOS,谷歌推出Android。虽然Android带有自己的碎片地狱,但它也带有自动系统更新,因此至少错误得到了缓慢修复。大多数J2ME游戏也可以轻松移植到Android。 真正具有决定性的变化是iOS上的App Store和Android上的Play商店。而不是通过几个级别的分销商,花费90%的钱,通过商店销售应用程序,将给你70%是一个相当大的一步。开发应用程序再次获利,开发人员开始转向这两个平台。
J2ME世界试图反击一段时间 - 有Java Verified,它提供认证你的应用程序来处理设备类。不幸的是,它成本很高,而且我认为根本没有帮助减少碎片 - 这是需要验证的设备,而不是应用程序。
制造商也带有他们自己的应用商店,例如诺基亚有他们的OVI商店,但为时已晚。
制造商慢慢意识到Android可以降低他们的开发费用 - 他们不再需要开发人员使用他们自己的本机固件,所以他们停止了战斗并采用了Android。这有两个结果 - 一个是J2ME的结束,因为在Android上不需要J2ME,第二个是一些制造商的结束和新的增长。
答案 1 :(得分:8)
我认为我们在这里谈论MIDP。
这取决于你对'#34;死"。
的定义人们一直声称JavaME已经死了好几年了。然而,最近出售的一款流行的消息应用程序显示,其50%的用户都在使用JavaME客户端。
我认为JavaME肯定会死,因为没有新的设备(或者很少)支持JavaME。我不认为它已经死了,但它将在不久的将来。
诺基亚最后一次使用他们的Asha设备,推出了许多新的API。但它并没有为JavaME带来新生。
但JavaME也是其他东西。例如,使用新的JavaME SDK,您可以创建蓝光光盘应用程序(BD-J)。这也是JavaME。
答案 2 :(得分:3)
是。 JME仍然活着,如下所示:
至于未来,我不知道甲骨文有任何正式公告。但是你不得不说Android的成功严重削弱了JME的未来前景。