我是一名网络开发人员,我想把我的网络产品搬到iPhone上。其中一个产品就像谷歌Maps:在手机屏幕上显示地图,您可以拖动或调整地图的大小,并查看我们添加到地图的一些信息。

我知道有一些技术可以让你使用HTML、CSS和Javascript来开发原生iPhone应用。我列举了一些:

Ansca移动 PhoneGap Appcelerator

还有其他类似的产品吗?它们之间有什么区别?我该选哪一个呢?


当前回答

Corona SDK (Ansca Mobile)使用Lua作为其编码语言。有关Lua的更多信息,请参见lua.org。

虽然我们计划进一步增加网页集成和本地ui元素,但我们的重点将倾向于图形密集型应用程序,如游戏开发,而不是基于web的技术。换句话说,我们并不认为人们会完全用Javascript/HTML/CSS来编写Corona应用。

其他回答

让HTML5的小部件看起来像iphone的小部件是一回事,但让它们表现得同样出色完全是另一回事。html5动画的性能(甚至是简单的视图转换),滚动长列表,对手势的响应感觉很粘和不稳定。iPhone用户会注意到其中的区别。

不同设备所支持的手势类型也存在一些差异,这也会导致特定平台的代码和可用性问题。

我想我还是会继续使用原生应用。

你应该学习objective - c和编程原生应用程序。不要依赖这些你以为会让生活更容易的东西。苹果确保最简单的方法就是使用他们的本地工具和语言。对于你的100行javascript,我可以在3行代码中做同样的事情,或者完全不需要代码,这取决于元素。看一些教程——如果你理解javascript,那么objective - c并不难。变通办法很糟糕,苹果可以随时把你的插头拔掉。

Rhomobile Rhodes (http://rhomobile.com/products/rhodes)在方法上与PhoneGap非常相似,但它是唯一具有以下功能的框架:

模型-视图-控制器模式(如 大多数web框架提供) 对象关系管理器 支持所有流行的智能手机(包括Windows Phone 7) 托管开发服务(不仅仅是托管构建):http://rhohub.com RhoStudio IDE中的完整调试器和无sdk模拟器 支持同步脱机数据

我对PhoneGap的理解是他们为很多iPhone api提供Javascript api。

对于有web开发背景的人来说,Titanium似乎更容易一些。它是一个简单的XML文件,用于创建一个基本的TabView应用程序,然后内容区域中的所有内容都由HTML / JS控制。我也知道Titanium确实为一些框架提供了一些javascript访问(特别是访问位置信息、电话ID等)。

更新:Titanium在0.8版本的框架中添加了Maps API。

Titanium支持native mapkit