有什么证据充分的或者开源项目的目标iPhone
,Blackberry
和Android
?还有其他平台更适合这种努力吗?请注意,我特别询问客户端软件,而不是网络应用程序,但有关在多个移动平台上使用网络应用程序的困难的任何信息也很有趣.
HTML5标准支持发布独立的HTML5应用程序.基本上,HTML5应用程序是一组HTML5,JavaScript和CSS文件,它们将在桌面或设备的浏览器中独立运行.您可以像任何其他程序一样分发它们,包括在iPhone的iStore上销售它们.
目前对此的支持不完整,但在未来一两年内可能会有很大改善.
谷歌针对HTML5应用程序提供信息和资源.HTML5的一个很好的介绍是由Mark Pilgrim撰写的在线书籍"Dive Into HTML5".这是一项正在进行的工作,但足够完善,无济于事.
这个问题有两个[新]解决方案:
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(通过可口可乐和代码)和EdgeLib目前似乎是最成熟的选择.EdgeLib主要面向游戏开发人员,根据Coke和Code,XMLVM开发人员很难联系.
iPhone使用Objective C,带有RIM功能的Blackberry Java SE和Android的另一个Java自定义版本.我可能会看到你如何组合后两者,但没有在iPhone上运行Java应用程序的功能(没有越狱).
到目前为止,我看到的最好的选择是像Qt一样可以在Windows CE上运行,几乎可以肯定是短暂的Symbian,一些Java平台和三个主要的桌面操作系统.
redfivelabs已经为S60平台实现了.Net紧凑框架
来自Appcelerator的Titanium Mobile看起来很有趣.您使用HTML和Javascript开发应用程序并上传到他们的服务器,在那里它被编译成目标平台的本机应用程序(目前是iPhone和Android)
对于iPhone来说,目前没有开源这样的概念,因为Apple iPhone SDK NDA禁止发布代码.他们还禁止在iPhone开发的任何非Apple网站甚至非Apple论坛上发布代码.一旦NDA到期(它会永远吗?),我们将开始使用开源iPhone应用程序.
此处尚未提及Suprised MoSync.
更新(2014年1月至今):该项目被放弃.