13

Sencha touch2和PhoneGap原生封装有什么区别?

很多人使用PhoneGap基于Sencha touch对app进行原生打包,但我发现Sencha touch 2新增了原生打包的功能。

那么哪种原生包在性能、可扩展性、功能性、成熟度等方面更好呢?

你如何选择?

4

3 回答 3

12

PhoneGap是一个中间平台,可以访问许多平台上的一些原生 API,它的界面语言是 Javascript。这意味着 PhoneGap 能够与许多跨平台的移动 web 框架一起工作,例如:Sencha Touch、Titanium、jQuery Mobile 等。

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

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

最后,两个主要区别是:

  • PhoneGap 提供了比 Sencha Touch SDK 更多的 API。
  • PhoneGap 支持 7 个平台,而 Sencha Touch SDK 仅支持 2 个。
于 2012-05-23T18:43:46.473 回答
3

我也有同样的问题,我同意乍一看确实是一团糟。是一篇非常好的文章,可以很好地“消除混乱”。

引用文章的要点:

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

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

于 2013-01-29T20:30:22.297 回答
0

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

于 2012-05-24T08:30:03.230 回答