关于iphone:跨平台移动开发已经完成了哪些工作?

关于iphone:跨平台移动开发已经完成了哪些工作?

What work has been done on cross-platform mobile development?

是否有针对iPhoneBlackberryAndroid的文档完善或开源项目? 是否还有其他更适合这种工作的平台?
请注意,我特别询问的是客户端软件,而不是Web应用程序,尽管有关在多个移动平台上使用Web应用程序的困难的任何信息也很有趣。


HTML5标准支持发布独立的HTML5应用。本质上,HTML5应用程序是一堆HTML5,JavaScript和CSS文件,它们将在台式机或设备的浏览器中独立运行。您可以像分发其他程序一样分发它们,包括在iPhone的iStore上出售它们。

目前对此的支持还很零散,但在下一两年中可能会大大改善。

Google for HTML5应用程序,用于获取信息和资源。 Mark Pilgrim的在线书籍" Dive Into HTML5"是对HTML5的一个很好的介绍。这是一项正在进行中的工作,但已足够完善以至有用。


有2种[最新]解决方案可以解决此问题:

Rhomobile的

PhoneGap的


我认为跨平台移动成功的最佳机会就是网络。只需为您要实现的内容编写一个非常简单的Web应用程序。它应该可以在诺基亚S60浏览器,Iphone和Android上使用。

那已经是很多移动设备了...


Appcelerator,PhoneGap(由Adobe收购,现在已标准化为Apache Cordova),Intel XDK(以前称为appMobi)和Rhodes(由Motorola Solutions收购)都是开源的,并创建了混合应用程序(与html ui紧密集成)添加一些本机控件)。

如果是游戏,那么唯一可用于商业开发的免费引擎的专业选择就是Unity3D。对于2D游戏,也可以使用cocos2d-x。此外,Vuforia可用于AR,LiquidFun用于物理。


XMLVM(通过Coke和Code)和EdgeLib当前似乎是最成熟的选择。 EdgeLib主要针对游戏开发人员,根据Coke和Code的说法,XMLVM开发人员很难联系。


iPhone使用Objective C,具有RIM功能的Blackberry Java SE和Android的另一个Java自定义版本。我可能会看到如何将后两者结合起来,但是没有在iPhone上运行Java应用程序的功能(无需越狱)。

到目前为止,我看到的最好的选择是Qt之类的东西,它将在Windows CE上运行,几乎可以肯定会在Symbian,一些Java平台和三个主要的桌面OS上运行。


redfivelabs为S60平台实现了.Net紧凑框架

Appcelerator的Titanium Mobile看起来很有趣。您可以使用HTML和Javascript开发应用程序,然后将其上传到服务器上,在服务器上将其编译为目标平台的本机应用程序(当前为iPhone和Android)


尚未在此处提及惊奇的MoSync。

更新(2014年1月至今):该项目被放弃。


对于iPhone,目前没有开源这样的概念,因为Apple iPhone SDK NDA禁止发布代码。他们还禁止在任何非Apple网站甚至iPhone开发的非Apple论坛上发布代码。 NDA到期后(会吗?),我们将开始拥有开源iPhone应用程序。


jQuery Mobile Alpha 2已发布
Nimblekit

煎茶

PhoneGap的

Appcelerator的


EdgeLib看起来很有前途,并宣布了iPhone Beta版,但尚未开放。


我开始使用名为EdgeLib的超酷跨平台SDK。它允许您使用简单的API,并且可以将项目编译到各种平台:Windows Mobile Pocket PC,Windows Mobile Smartphone,Symbian Series 60,Series 80,Series 90,Symbian UIQ,Gamepark Holdings GP2X,Gizmondo和Windows桌面。
我知道iPhone,Blackberry和Android不在该列表中,但是开发人员提到这些平台正在他们的路线图上。


我为dat找到了一个游戏引擎
MoMinis游戏可供分发,并在Android,Blackberry,Symbian和J2me设备上受支持。 MoMinis游戏包括各种休闲游戏,包括街机,拼图,时间管理,策略和脑力训练手机游戏。

mominis


BlackBerry并没有真正的Java SE,而是Java ME,并带有RIM提供的许多其他库。 Android也是如此。您将在移动设备上看到的唯一的跨平台应用程序可能是用严格的Java ME编写的,该Java ME可在大多数设备上运行。但是,就像不同浏览器之间的JavaScript一样,Java ME在不同设备上也存在古怪之处,因此可能需要更改源代码。


Phonsai是"无需编码"的跨平台移动开发市场中的新产品
它是自己动手的移动开发和内容管理的结合
您可以自定义所有应用程序。没有模板。
是SaaS。完全基于Java Web Start。
使用2000种手机型号。
非常简单的GUI,无需编码。只需复制并粘贴。
它具有创建,发送和报告模块。
最后,它内部有4个模拟器,因此它是所见即所得的概念。
您可以通过http://phonsai.com与Phonsai联系。


我们有一个跨平台移动开发平台,称为RAMP。它涵盖了从Midp 1到Android的功能和智能手机。该平台主要针对安全的商业应用,但是它是可插拔的,因此您几乎可以使用它进行任何操作。

有关更多信息和对平台的访问,请查看:

虚拟移动技术


Symbian OS上的S60有许多有趣的项目正在发生,这些项目与台式机/服务器语言有关,以移动应用程序。一些有趣的:

Python:sourceforge
Ruby:红宝石符号

Mozilla:mozilla

S60Webkit:S60浏览器

POSIX:openc_cpp


推荐阅读