Sencha touch2和PhoneGap之间原生包装的区别

时间:2012-05-23 18:14:55

标签: ios cordova sencha-touch sencha-touch-2 packager

Sencha touch2和PhoneGap之间的原生包装有什么区别?

许多人使用PhoneGap本机打包基于Sencha touch的应用程序,但我发现Sencha touch 2具有原生包装的新功能。

那么哪种类型的本机包在性能,可伸缩性,功能性,成熟度等方面更好?

你如何选择?

3 个答案:

答案 0 :(得分:12)

PhoneGap 是一个中间平台,可以在许多平台上访问一些本机API,其界面语言是Javascript。这意味着PhoneGap能够与许多跨平台移动Web框架协同工作,例如:Sencha Touch,Titanium,jQuery Mobile等。

Sencha Touch 2 还通过其SDK提供了一些原生API(目前在iOS,Android上可用)。

如果您不打算使用任何本机API,那么它们在性能和功能上没有任何重大差异,因为唯一的工作就是将您的Javascript代码包装到相应设备上的Webview本机组件中。

最后,两个主要区别是:

  • PhoneGap提供的API比Sencha Touch SDK多得多。
  • PhoneGap支持7个平台,而Sencha Touch SDK仅支持2个。

答案 1 :(得分:3)

我有同样的问题,我认为乍一看真是一团糟。 Here是一篇非常好的文章,可以很好地“清除混乱”。

引用文章的要点:

  

Sencha Touch(和jQuery Mobile)是移动网络框架。您可以使用这些技术来创建基于Web的移动应用程序。他们无权访问任何本机API。

     

您可以在PhoneGap和Titanium中使用Sencha Touch和jQuery Mobile。如果您认为您的html / js作为本机应用程序很酷,您可以使用PhoneGap或Titanium将浏览器包装在您的应用程序中并将其放入应用程序商店或市场中。我认为这就是混乱的来源。将Sencha Touch或jQuery Mobile应用程序放在本机包装器中并不会使它成为本机应用程序。它使它看起来好像是一个原生应用程序。您可能会从PhoneGap或Titanium API获得一些额外的功能,但它仍然不一定是“原生”应用程序。它是在设备上本地运行的Web应用程序。这是在类似本地区域内使用Web技术的好方法。

答案 2 :(得分:0)

不同之处在于Sencha Touch允许您甚至在Windows上构建原生iOS应用程序,而PhoneGap'仅'将您的HTML文件捆绑到XCode项目中,还需要在OSX上进行编译以进行分发/打包。