Android 开发跨平台移动应用

Android 开发跨平台移动应用,android,windows-phone-7,blackberry,ios4,cross-platform,Android,Windows Phone 7,Blackberry,Ios4,Cross Platform,越来越多的移动平台正在推出,开发人员可以使用sdk。有多种移动平台可供选择: Android、iOS、Moblin、Windows mobile 7、RIM、symbian、bada、maemo等 而跨平台应用程序的制作则是开发人员头疼的问题。我正在寻找跨平台的共同点,这将有助于希望将应用程序移植到所有平台的开发人员。比如什么是不同的屏幕分辨率、输入方法、OpenGL支持等。 请分享您知道的任何平台的详细信息 或者,通过用html(小部件类型的东西)编写代码并将其加载到本机应用程序中,是否存在这

越来越多的移动平台正在推出,开发人员可以使用sdk。有多种移动平台可供选择: Android、iOS、Moblin、Windows mobile 7、RIM、symbian、bada、maemo等

而跨平台应用程序的制作则是开发人员头疼的问题。我正在寻找跨平台的共同点,这将有助于希望将应用程序移植到所有平台的开发人员。比如什么是不同的屏幕分辨率、输入方法、OpenGL支持等。 请分享您知道的任何平台的详细信息

或者,通过用html(小部件类型的东西)编写代码并将其加载到本机应用程序中,是否存在这种可能性。 我知道android,我们可以通过调用
setContentView(view)

请共享类详细信息,我们可以在其中将html视图添加到您知道的不同类型平台的本机应用程序中

此线程的目的是在开发人员之间共享公共详细信息。标记为社区wiki

跨平台工具和库

  • XMLVM和iSpectrum(从Android应用程序交叉编译Java代码或从头开始创建Java代码)

  • (跨平台移动应用程序)

  • Tianium(使用web技术构建本地移动和桌面应用程序)

  • 单声道触摸屏(适用于iphone)

  • rhomobile- 样本如下:

  • Sencha Touch-Sencha Touch是一个HTML5移动应用程序框架,允许您开发在苹果iOS和谷歌安卓触摸屏设备上看起来和感觉都是本地的web应用程序

  • Corona-Iphone/Ipad/Android应用程序跨平台库。太棒了。

  • 将现有Android应用程序移植到Windows Phone 7的指南

  • 针对智能手机和平板电脑的触摸优化Web框架

是的,html5正受到一些关注。您还应该看看第四季度即将推出的这个联盟和平台。 不确定该项目是否成功,因为这听起来像是一个巨大的挑战,但以下是细节:

网站:

新闻:

WAC计划发布其初始版本 智能交通系统的规格和组成 SDK将于11月发布给开发者 规范将基于W3C 标准化,打造强大的平台 开发富移动web WAC还将提供 设备的向后兼容性 基于当前的JIL和BONDI 规格。 ()

这是一个由大约25家电信公司组成的国际联盟,旨在创建一个面向所有开发商并向所有手机用户销售的平台。 ()


当部署为webapp(如上所述的html5)时,您会得到一些共性,但对于丰富的原生应用程序,不同智能手机的API完全不同

HTML5可能会有所改进,但要做有趣的事情,你需要本土化

有一些“跨平台”的智能手机框架,比如Phonegap,但我听过很多关于将其用于“实际”工作的不好的事情。(很多开销等)

我的回答,但让我再详细说明一下:

我认为跨平台工具在历史上也一直是rans,因为这些工具有错误的哲学焦点

跨平台工具的所有卖点都是它们给开发人员带来的好处。它们的销售理念是允许开发人员在任何地方编写一次即可运行。它们的销售理念是允许开发人员在不学习新API的情况下扩展其市场。它们的销售理念是允许开发人员使用SLAh成本和上市时间

没有出售的跨平台工具是它们给最终用户带来的好处

对最终用户的好处不是卖点,因为跨平台开发很少对最终用户有好处。最终用户不关心开发人员为将产品推向市场付出了多大的努力。他们也不关心应用程序在不使用的情况下可以运行多少个平台,而只关心一个平台。他们只关心应用程序是否可以运行除非他们有特殊的需要在许多不同的平台上运行应用程序,否则事实上它并没有给他们带来任何价值

相反,制作跨平台API的不可避免的妥协意味着,API创建的所有应用程序在每个平台上都将处于最佳B级。它们永远不会是每个平台上使用的最佳工具

所有这一切都意味着,在大多数用例中,与使用特定于平台的API制作的产品相比,跨平台工具为最终用户提供的产品较差。最终用户总是有更好的选择

从长远来看,你通过给最终用户提供最有用的工具来赚钱。如果你不从哲学上专注于让最终用户的生活更轻松、更高效,你从一开始就注定要失败。最终用户有很多选择,如果你的工具不是最好的工具之一,你就无法在市场上成功


如果你认为“用户将真正受益于在许多不同平台上运行此应用程序”,那么你应该只使用跨平台工具。如果你一开始只考虑跨平台工具,因为它们会让你(开发人员)受益生活更简单,那么你选择它们的理由是错误的,它们对你的伤害比帮助更大。

在移动设备上进行跨平台开发有几种方法。当然它们都有局限性。没有任何解决方案能够像本机应用程序那样利用设备的所有功能

重新使用代码

虽然所有移动操作系统都不使用相同的开发语言和API,但有时您可以共享一些类或逻辑层代码

例如,对于Android应用程序,C++可能可以通过使用重新使用,对于Symbian应用程序,因为它们是用C开发的+