android / phonegap性能

我读过关于phonegap,使用户能够为Android编写基于Web的应用程序,我想知道:

  1. phonegap与“真正的”android应用程序相比,性能如何
  2. 什么不能在phonegap工作?
  3. 我知道这是可能的手机谷歌地图实施,但我认为有很多的限制,比较直接编码android下的地图?
  4. 作为android的新手(但在networking编程中),我应该去直接android编码,而不是phonegap?

我打算写一个应用程序,使用谷歌地图服务+ GPS,数据库访问等,恐怕它不是真的可能与phonegap。

谢谢

Solutions Collecting From Web of "android / phonegap性能"

PhoneGap应用程序的性能很好,但主要取决于你在做什么(例如animation可能会更好地performance本机)。

如果您只是在一个平台上构build,那么最好是本地化,因为PhoneGap和原生Android开发将会有一个学习曲线。 因为你使用地图很多,所以也可能更容易。

我正在用Google地图,GPSbuild立应用程序,并使用后端服务/数据库。 我select了使用

  • Phonegap – “包装”我的HTML,我也使用地理位置库。
  • Javascript – JQuery – JQuery Mobile – 大部分的UI
  • HTML5 – 重要的自定义用户界面,我需要做graphics和手势等,需要手动编码
  • Node.JS – 我的后端服务。
  • JSONP – 在我的移动应用程序和服务之间进行通信
  • CouchDB – 在云中,NoSQL Javascript友好的数据库,非常酷。

几乎完成后,我可以说这种types的应用程序当然是可以使用这一堆技术,整个交叉/平台方面是非常棒的。 然而,这并不是特别容易。 特别是,你需要注意…

  • Phonegap使用file://基于URL,所以浏览器“安全”和跨站点脚本的各种问题搞乱了你的Ajax和cookie代码。 我通过使用JSONP解决了这个问题,但是它阻止了我使用一些很酷的东西,否则就像SocketIO一样。

  • 在浏览器中,在模拟器内的Phonegap容器内debugging您的JavaScript …实际上是不可能的。 我通过Firebug在Firefox上进行了大部分debugging,然后使用alert('blah')来解决任何只在部署时popup的问题。

  • 在HTML中托pipe的Google地图只有在连接到互联网的情况下才能正常工作,这意味着在移动时进行debugging(我在通勤时做了大量的编码)是一件痛苦的事情。 我需要find可靠的移动互联网,没有biggie,它的酷,但是,这是额外的东西。

  • 谷歌地图InfoView窗口吸吮吸吮。 我最终放弃了,并从地图上popup任何必要的对话框作为JQuery Mobile页面。

希望这有助于某人;)

我会不惜一切代价避免Phonegap。 我一直在用Phonegap开展一个项目,我们遇到了很多问题。 最后,我们转向使用本地语言编写代码(java / objective c / java me)。

在此期间,也许有些事情发生了变化,但在当时(2010年第二季度),Phonegap确实只适用于iPhone。 Android API在他们的网站上没有logging一半的function,甚至这些function也被塞满了bug。 例如,他们的联系人API有一个巨大的拦截器 – 使用一些不存在的JavaScript对象。 好像他们只是复制/粘贴来自iPhone API的代码,甚至不关心它是否工作。 我真的很失望Phonegap – 我们不能使用数据库,我们无法获得联系人,文档是错误的….

还有一件事我讨厌做Android的HTML应用程序,因为缺乏具有原生Android GUI的库。 几乎所有的JS GUI库都专注于iPhone,并复制iPhone GUI。 那些广告支持Android的人中,有那么糟糕的组件devise,他们是无用的。

再次,这些是我6个月前的经验。 在此期间,我希望有一些改变,但我相信我不会很快使用HTML移动应用程序/ android。

phonegap是它可以让你build立跨平台的移动应用程序。 如果你只是做android ,我想这是没有道理的。