44

我是一名新的 iOS 开发人员,但目前对 Android 开发和 Java 一无所知。我将花时间学习开发 Android 版本应用程序的工具。PhoneGap 的跨平台能力听起来很强大,但我不确定是否有任何缺点。谁能告诉我使用PhoneGap的利弊?根据您的经验,您会建议我选择原生 Android 还是 PhoneGap?在此先感谢您的任何建议。

4

4 回答 4

76

很久以前,我一直在使用 Phonegap 进行开发。
NOTE: this is all based on my own experience

专业人士:

  • 您不需要任何“本地”经验,只需要中级“网络开发技能”就足够了。
  • 对于 95% 的用户来说,您不必担心它是否可以在 iOS 和 Android 上运行,因为 Phonegap 可以解决您的所有问题,只需使用 Phonegap Libs。
  • 就我的经验而言,对于 iOS 来说,测试起来非常简单快捷。
    • 我团队的另一部分正在构建“android 版本”。别担心,你不需要。那是个人的选择。最后,我们将所有内容合并在一起,只需要重新检查几件事。(例如,不同页面上的不同布局。有关此内容的更多信息,请参见缺点。)

缺点

  • 您必须考虑要使用的按钮。Android 设备有一个自己的“返回”按钮。至于 iOS,您需要在您的应用程序中开发它。这是您自己的选择,但您最终可能会设计两个页面。
  • 性能方面的Phonegap并不是最好的。我不能告诉你这个的确切原因,核心方面。我们的应用程序不需要高度图形化的界面,但 Phonegap 似乎已经在与“体面”的网页作斗争了。因此,当您计划构建需要高图形性能的游戏或应用程序时,您最好使用原生。



然后我为你做了一些快速的研究。

  • 在这里,我找到了一个不错的移动框架比较。(通过这个 SO q。
  • 是一篇写得很好的文章,比较了TitaniumPhonegapNative应用程序开发。
  • 这里列出了优点和缺点。



绑定在一起,这实际上取决于您的应用程序的目的。
在设计需要高图形性能的游戏或其他应用程序时,您最好使用原生编程。
当您计划构建轻量级应用程序并且您已经具备 Web 开发知识时,我推荐 Phonegap。

于 2012-11-18T12:07:23.067 回答
10

您正在寻找一种工具来开发已经存在的 Android 版本的应用程序?那么作为关键优势的跨平台能力不会被使用吗?

我建议您在原生 Android 开发上投入一些时间。您可能熟悉 Objective-C,进入 JAVA 不会是一项艰巨的任务。由于其一致的外观(按钮和其他布局组件)和更好的性能,本机应用程序比 Web 应用程序获得更好的评级。PhoneGap 应用程序在 iOS 设备上运行愉快,但在三星 Galaxy Nexus 等双核 Android 设备上仍然落后。

入门:

于 2012-11-18T12:12:48.770 回答
4

我刚刚从头开始尝试原生 Android 和 Phonegap。如果您想在 Android 上做一些不需要 phonegap 未涵盖的特定手机功能的事情,Phonegap 可能是一个好主意(因为否则您将同时使用 phonegap 和 android native 来开发 phonegap 插件 =D)。

另一方面,Android 在 Activity 生命周期的管理上引入了一些复杂性,使用 phonegap 时无需担心。

因此,如果您不需要一个非常复杂的应用程序,但它可以像一个简单的 Web 应用程序一样运行良好,或者如果您需要的所有电话功能都由 phonegap 支持,那么 phonegap 可能是首选(特别是如果您已经熟悉 Web 开发)。

啊,当然,您不能期望 phonegap 应用程序具有与本机应用程序相同的性能。但同样,如果您的性能要求不是太高,那么可能值得考虑 phonegap。

于 2012-11-18T11:39:11.883 回答
4

phonegap 作为一个原生 webview 工作,可以访问一些主要的原生功能,比如手势相机......使用它,除了原生功能之外,您还可以在任何 Web 应用程序中做任何您可以做的事情......所以这一切都取决于您的应用程序以及你真正想做的事

于 2012-11-18T12:40:51.737 回答