【问题标题】:Is Android + PhoneGap/Cordova always a headache?Android + PhoneGap/Cordova 总是让人头疼吗?
【发布时间】:2013-07-31 19:00:54
【问题描述】:

我一直在开发适用于 iOS 和 Android 的移动应用程序。由于时间/预算的限制,我们最初选择 PhoneGap/Cordova 作为移动应用程序框架,因此我们可以编写一次并部署到两个平台。

这个计划在 iOS 上运行良好,但我们发现 Android 的浏览器/引擎有点像垃圾(说得好听点)。每次我们添加新功能时,我们都会发现 Android 浏览器不支持的东西,或者只是部分支持,或者完全支持但不时会随机失败等等。即使我们围绕 Android 问题进行编码和让事情顺利运行,在多个设备/版本上进行测试,并将新应用程序部署到 Android 市场,我们立即开始收到来自无法让应用程序在其设备上运行的客户的电子邮件和报告。我们让他们卸载/重新安装,重新启动手机以清除内存等,但他们的设备仍然始终失败(并且“失败”,我的意思是它通常只是冻结和/或不会响应触摸输入 - 通常不会崩溃,或任何东西)。该应用程序适用于大多数人,但仍有不少设备出现莫名其妙的故障。

我不是说这是一个咆哮,我试图分析Android+PhoneGap 路径是否是我们的正确路径。具体来说,我想了解以下内容:

  1. 是否有人在使用 Android+PhoneGap 应用程序方面取得了成功?还是 Android+PhoneGap 在某些设备上总是会出现问题?
  2. 使用原生 Android 应用程序(我从未尝试过)是否会更幸运?或者即使是原生应用,多个设备/版本在 Android 上总是存在问题?

【问题讨论】:

    标签: android cordova


    【解决方案1】:

    1) 是的。有一些基于 Phonegap 并且在所有设备上运行良好的优秀应用程序。

    2) 这取决于您要使用的 Android 功能。少数版本不支持某些仅适用于新版本的功能。

    顺便说一句,您为您的应用选择的最低要求版本是多少?我假设您正在以 Android 作为基础版本来开发应用程序。

    创建新的 Android 项目时,您必须设置所需的最低平台版本。如果您设置较高的值并在不支持该功能的较低版本中使用该应用程序,结果会有所不同。

    【讨论】:

    • 抱歉回复慢。为了回答您的问题,目前最低 SDK 版本设置为 8(Android 2.3),我在该版本上运行良好。实际上,Android 4.0 是(到目前为止)问题最大的。任何高于或低于 4.0 的东西现在似乎都可以正常工作,但每次我尝试添加新东西时都是一场噩梦……我相信部分问题是我没有使用移动框架(Sencha、JQM 等)。我的应用只是一个带有移动样式的标准 Backbone.js 应用。
    【解决方案2】:

    在与 Android+Cordova 合作了一段时间后,我有以下建议/cmets 给任何想朝这个方向发展的人。

    1. 考虑使用 Sencha Touch、jQuery Mobile 或其他已经针对 Android 浏览器问题(有很多)进行编码的移动框架。考虑不要偏离这些框架附带的默认样式太远。简单地将普通网页设计为看起来像移动应用程序是在多个版本的 Android 浏览器上工作时经常令人头疼的问题。
    2. 虽然安卓浏览器很垃圾,但Mobile Chrome 还是不错的。在 Android 4.4 中,Chrome 引擎成为 Android 应用程序的 webview 使用的默认引擎。如果你不喜欢 Sencha 或 jQuery Mobile 之类的,你可以暂且只使用移动网站一段时间,直到 Android 4.3 及以下版本变得微不足道。在移动版 Chrome 上运行并不难。
    3. 即使没有 Sencha/JQM,您仍然可以解决现有浏览器问题,但这几乎与为 IE6 开发一样令人沮丧。好吧,也许没那么糟糕……但很接近。
    4. 我已经开始使用原生 Android 应用程序进行一些实验,到目前为止,这似乎比使用 Android+Cordova+lackOfSenchaOrJQMorTheLike 构建应用程序更容易。我尝试过的东西在不同的 Android 版本中工作得非常一致。但我在这方面的经验并不多,因此无法对原生 Android 应用发表过多评论。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-11
      • 1970-01-01
      • 1970-01-01
      • 2022-11-22
      相关资源
      最近更新 更多