2011-08-27 109 views
1

在移动开发领域,这是我们可以使用的最好的编程语言/技术,因此几乎可以在所有版本上运行相同的代码。我知道这是一个广泛的问题,最可能的答案是Java。如果我想提供最大数量的设备(仅限Android,Iphone和其他高端类)的支持,我应该拥有多少个不同的代码库?最广泛使用的移动应用程序开发技术

感谢, GL

回答

1

[...],我们可以用这样几乎将上 所有版本[...]

所有现代的移动运行相同的代码智能手机/设备支持HTML 5/CSS/Javascript。

PhoneGap将这些基本工具与您需要的其余功能一起增添。

jQuery Mobile这样的项目也获得了很多牵引力。

我会从那里开始。

我不会说这是“最广泛使用”的技术......至少现在还没有......但我很难相信任何人都不会认同事情会朝着这个方向发展。

UPDATE:对于谁没有见过的PhoneGap之前任何人 - 这(免费)产品将你的HTML/CSS/JS,并把它们打包本机应用程序中(其中包括一些垫片来启动你的应用程序,并通过从javascript访问相机/文件/陀螺仪等来增加它)。您的应用脱机工作,可以通过所有可用的标准应用商店进行部署。

+0

谢谢史蒂夫...这看起来不错...对于我们可以使用PhoneGap编写的应用程序,是否有任何限制? – GKL

+0

是的,没有。您可以随时“突破”您希望/需要的原生代码中的某些功能。 PhoneGap可能不会是我的第一站,如果我正在寻找建立一个3D射手。但这对很多事情都有好处。 – Steve

1

如果它是一个网络应用程序,那么你可以开发使用高度自适应的布局,HTML 5,CSS和你选择的JS库,你会没事的。

如果您正在运行本机应用程序,那么您几乎陷入了困境:适用于Android的Java,适用于iOS的Objective-C。

+0

不正确。像PhoneGap这样的产品(我在回答中提到过)为开发人员提供了一种写入HTML 5/Javascript的方法,并部署了“原生”应用程序(完全访问相机/陀螺仪/加速计,文件等)。 PhoneGap会将您的HTML/JS打包到本地应用程序包中,并且可以通过这两个应用商店进行部署。该应用程序将脱机运行,等等。仍然运行HTML/JS,但本机应用程序的所有好处。 – Steve

+0

那么,合理的人可以不同意像PhoneGap这样的产品是否真的可以替代原生环境。根据定义,您需要对您所使用的底层库和不使用的底层库进行一些妥协。 而且,让我们记住的问题是,“最广泛使用的移动应用程序开发技术”。我确信PhoneGap等是可以估量的,但大多数开发多平台开发的开发商都是使用本地工具进行开发。 – Christophe

+0

我想我们只是以不同的方式阅读这个问题。 OP使用这个语句将问题语境化:'[...]我们可以使用几乎相同的代码来运行所有版本。此外,声明:“根据定义,您需要做出一些妥协,以确定哪些底层库您没有利用。”也不是真的。你可以从JS调出本地代码来做你想做的任何事情。 – Steve

0

对于HTML5/CSS3,即使可以重用90%的代码库(大多数情况下不呈现JS),但在图形演示时也存在显着差异。即使你认为由于Android和Iphone使用Webkit,所以它们应该具有大致相似的功能,但它们很相似。只是举几个例子:Android手机(Android 2.3)上大多不支持CSS3 3D转换,Android和iPhone之间的音频标签实现方式不同(Android不使用缓冲和流式传输,而iPhone使用)。

只是不要让我开始了解Android的尺寸和宽高比。这是一个混乱的血腥。

我们还没有测试过最新的Windows手机,但是直到IE10发布之前,Windows世界对HTML5的支持还是很糟糕。

总而言之,目前没有技术,“我们可以使用几乎相同的代码来运行所有版本。” HTML5“差不多”在那里,但是Android可能需要几年的时间才能赶上,而Webkit要获得所需的速度和功能才能与原生应用程序正面竞争。