【问题标题】:Phonegap / Cordova JS Framework and designPhonegap / Cordova JS 框架和设计
【发布时间】:2012-11-02 19:15:16
【问题描述】:

我想制作我的第一个 Phonegap 应用程序。它将是一个容器,最后将调用 API 并显示结果。没什么复杂的。

但是因为我已经阅读了这些问题,phonegap 有什么问题,尤其是在 iOS 世界中滚动不那么流畅等。我希望你能分享一些经验给我,这样我就可以从一开始就避免圆顶大错误。

Firstable:你使用 jQuery mobile 还是 Zepto?我读过 Zepto 非常快,并且没有像 jQuery 那样的开销。你用什么样的库来设计?

我有自己的设计,但实际上是 PSD 文件。我应该尝试自己制作所有东西,还是应该使用 jQTouch 之类的框架?如果我使用 jQTouch,我可以按照我的 PSD 设计的外观设计元素吗? 还有哪些库可供我使用它进行自己的设计?

设计单薄,我遇到了一些麻烦。我应该调整它的大小并使用 CSS3 制作 HTML5,但它可以在 Phonegap 上运行吗? 我还想使用一些模板引擎,比如http://mustache.github.com/,这样模板可以更快地加载。有经验吗?

我看到 Wikipedia 使用了我在此处发布的许多功能,我认为它们可能足以创建具有良好性能的应用程序。

你的经验是什么?

【问题讨论】:

    标签: cordova jquery-mobile jqtouch zepto


    【解决方案1】:

    在 iOS 设备上滚动不良。是的,但我们在 Android 上遇到了更多问题。这取决于你的 DOM 树有多满。沉重的页面总是会带来麻烦,尤其是在旧手机上。

    jQuery 或 Zepto:几乎没有区别。

    放弃 jQuery Mobile! jQTouch:也许吧。请注意,在低端设备上,phonegap 应用程序运行缓慢,无论它们如何优化。一些旧手机的 JavaScript 性能很差,如果可能的话,将业务逻辑外包给服务器并让设备只显示数据。我建议您自己完成大部分设计。保持 DOM 树很小。

    总结:不要对phonegap抱太大期望,它永远不会像原生应用那样好。

    【讨论】:

    • 嘿丹:谢谢你的回答。是的,我知道,本机应用程序是最好的应用程序.. 但在我的情况下不是。这取决于预算,并且因为我想运行一些 A/B 测试,所以我需要手头上的应用程序才能经常更新。
    • 没有框架的自己设计是什么意思?例如,当我单击底部滑动的链接时,如何进行页面更改,例如向左或向右滑动,或成为新页面。你知道大多数应用程序都有哪些很酷的效果吗?
    • 我尝试使用 jQuery UI 实现幻灯片动画。表演也不过如此。再次在这里:页面拥有的 DOM 对象越多,幻灯片动画的运行速度就越慢。看看jqueryui.com/effect
    【解决方案2】:

    我在顶部使用带有我自己的自定义框架 (http://github.com/tqc/ChondricJS) 的 jQuery mobile 来提供大部分应用程序结构。

    您可以通过此设置获得不错的性能,尤其是在 iOS 5+ 中,但是您可能会做错很多小事,这会导致问题。背景图像和触摸滚动尤其对细微的使用差异非常敏感。

    PhoneGap 将为您提供一个共享的跨平台代码库,并让您充分利用您的 HTML 和 JavaScript 技能,但不要指望一切都开箱即用 - 平台之间仍然存在差异,因此您绝对需要原生调试并了解移动 safari 的各种怪癖,以制作精美的应用。

    【讨论】: