【问题标题】:Phonegap app performance vs native app performancePhonegap 应用程序性能与本机应用程序性能
【发布时间】:2011-09-22 21:55:13
【问题描述】:

我们正在考虑构建条码扫描应用程序。我们正在考虑使用 PhoneGap,但我们唯一担心的是速度。 应用程序将做的只是扫描条形码并检查服务器以查看它是否有效。该应用程序非常强烈地使用相机通过图像扫描条形码。 我的主要问题是,通过 phonegap 进行扫描会和原生应用程序一样快吗?速度非常重要,因为用户必须非常快速地扫描多个条码。

【问题讨论】:

    标签: iphone android blackberry cordova


    【解决方案1】:

    Phonegap 使用相同的原生 API,只是将它们抽象化,以便您可以用 html 和 javascript 编写应用程序。拍照的时间或任何其他本地过程不如用户感知的时间重要。这是您需要向用户公开的部分本机执行时间 + 抽象 API 时间 + UI 响应能力。

    抽象总是有开销,但我认为在这样的应用程序中可以忽略不计(在比 BB OS5 更新的手机中)。当前的问题源于渲染 HTML 的硬件和设备上安装的浏览器软件。

    许多 BlackBerry 手机不使用 webkit(OS5 及以下),并且它们使用的浏览器在呈现 web 应用程序时看起来非常缓慢。低于 5 的 BB OS 版本没有在本地层和 javascript 层之间进行通信的生产价值方式,经常看到的 hack 是设置和轮询 cookie 中的更改。 Android 一直对 JavaScript 到原生交互 afaik 有很好的设计。

    黑莓手机和许多低端 Android 手机没有 GPU,或者一些有 GPU 的 Android 手机没有为 GPU 编译 webkit!如果没有这个你的 UI 应用程序可能 有那种迟钝的感觉,页面/按钮需要更长的时间来响应,当您尝试快速浏览菜单时,这一点非常明显。

    自从 phonegap 发布以来,这已经有了很大的改善。 UI 延迟应该会继续减少,即使是新的低端手机也可以为 web 应用程序生产做好准备。但根据我的经验,我们在 2011 年还没有达到这一点。

    【讨论】:

      【解决方案2】:

      手机的内置软件负责扫描和拍照。 PhoneGap 只会触发事件并帮助传输数据,但手机会完成所有工作。

      【讨论】:

        【解决方案3】:

        正如其他人所说,基于 html5 的 UI 可能会让人感觉迟钝。也许这不是问题;你只需要试试看。对于扫描条形码并将其上传到服务器,Phonegap 开销可能并不显着。

        【讨论】:

        【解决方案4】:

        我开发了一个智能手机应用程序,其中条码扫描是扫描图像的主要功能的替代方法,该图像被图片匹配技术识别。我使用PhoneGap。我没有将其与本机应用程序性能进行比较。我可以说,对于我的基本用户界面(它是智能手机的网络应用程序),我的网页渲染速度足够快,不会成为问题。这一性能已在 600MHz 智能手机 CPU(运行 Android 2.2.1 的 LG Optimus One)上观察到。

        图片匹配和条形码扫描是在服务器后端完成的,而不是在智能手机本身上。问题变成了从智能手机通过 WiFi 或服务提供商网络、通过 Internet 到服务器的网络速度之一——然后是服务器对智能手机的响应。图片匹配或条码扫描的处理速度必须小于一秒(理想情况下为半秒),这样加上网络延迟时间,对用户来说仍然是1-2秒的响应时间。

        我从智能手机传输到服务器的图像文件的目标是 40KB 左右。在典型的 54Mbps WiFi 网络或 HSPA+ 服务提供商网络中大约 40Mbps 的运行速率下,我发现我的应用程序的性能是合适的。即使在 15Mbps 的公平信号 WiFi 速度下,最终用户的响应在 1-2 秒之间也是可以接受的。

        智能手机开发(双核处理器)和服务提供商网络(4G HSPA+)的步伐只会让行业走得更高。这是应用开发向前发展的巨大机遇。

        支线主题: 我在服务器上使用 Zbar 代码进行条码扫描,并且正在寻找更好的替代方案。使用非变焦、非微距镜头的智能手机扫描 ISBN 条码的挑战在于,典型的条码尺寸太小,“简单”的条码扫描算法无法正常工作。我想听听有关条码扫描的替代方案和人们的经验。我会寻找可以部署在服务器后端的代码,而不是运行智能手机常驻条形码扫描。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-05-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多