Android phonegap与本机应用程序

Android phonegap与本机应用程序,android,cordova,Android,Cordova,您好,我是一名应用程序开发新手,我已经完成了一些课程工作,开始使用PhoneGap构建应用程序。下个季度,我将学习一门以本机方式构建应用程序的课程。我不断听到关于哪种方法更好的争论,所以我正在寻找任何能帮助我解决哪种方法更好的人。如果有错误的方法,我不想学习错误的方法 我有两年的本地开发经验。目前我正在PhoneGap中开发应用程序 根据我的说法,去本土发展。 有很多关于PhoneGap和Native的文章 大多数是指本机应用程序 最主要的是应用程序的性能。与本机相比,Phonegap无法提供良

您好,我是一名应用程序开发新手,我已经完成了一些课程工作,开始使用PhoneGap构建应用程序。下个季度,我将学习一门以本机方式构建应用程序的课程。我不断听到关于哪种方法更好的争论,所以我正在寻找任何能帮助我解决哪种方法更好的人。如果有错误的方法,我不想学习错误的方法

我有两年的本地开发经验。目前我正在PhoneGap中开发应用程序

根据我的说法,去本土发展。
有很多关于PhoneGap和Native的文章

大多数是指本机应用程序

最主要的是应用程序的性能。与本机相比,Phonegap无法提供良好的性能

如果你太擅长CSS、HTML和JavaScript,那么就选择PhoneGap,因为你不需要创建不同的ios和android应用程序

另外,如果你的应用程序支持较低版本的android(低于4.0),应用程序的行为会很奇怪,因为较低版本的webview不好。 UI将无法正确呈现

有关PhoneGap与Native的更多信息,请参见以下链接

我必须读这本。 -

所以最后

1)您对Java或本机Android有很多经验吗?
-与本土发展同步

2)应用程序很大,您希望应用程序具有更好的用户界面和性能。
-与本土发展同步

3)您是否需要在多平台上运行且预算非常低的应用程序?
-使用PhoneGap

4)您在HTML、CSS、JavaScript等方面有丰富的经验吗
-使用PhoneGap


请记住,PhoneGap中没有任何调试工具,因此无法调试像android这样的应用程序(工具android Studio、Eclipse、IntelliJ IDEA)。

如果您可以选择,请转到本机应用程序

  • 使用Phonegap/Cordova,您总是被限制在网络视图中,由一个可能是“iPhone 6 plus”或“最差的android智能手机”的设备来处理。在任何情况下,您的应用程序必须为用户运行
  • 相反,在本机应用程序中,您可以使用本机元素,这样性能和反应性会更好。此外,请考虑iOS和Android应用程序的“强>外观”(UX)<强>不相同(例如,对于Android应用程序来说,材料设计应该是首选),因此,为了创建一个好的移动应用程序,你应该开发2个PoPiGAP应用程序…但你为什么要这么做
  • 还要注意的是,如果你的应用程序需要做一些比普通应用程序更“特殊”的事情,那么几乎可以肯定的是,你必须为你想要交付应用程序的每个移动平台开发自己的phonegap插件。。。所以不管怎么说,你都可能会使用本机代码
  • 对我来说,使用phonegap/cordova的唯一原因是你是否擅长html/css/js而不擅长java/objective-c/swift
  • 更新被卡住是phonegap的噩梦。如果你的应用程序很大,并且你使用的框架和东西与你所依赖的不同,例如:cordova、ionic、插件、你正在使用的npm软件包、你正在使用的grunt软件包。一切都取决于一切,几乎不可能跟上所有这些,也不可能让你的应用程序正常运行。其中一些组件将阻止您更新其他组件。例如,一些插件仍然不支持新的Android版本,您无法更新。(感谢@mommcilo,我完全同意这一点)

  • 根据我在移动开发(cordova/phonegap和android/iOS)方面的经验,我的想法是:

    最好的答案是看看哪些大公司使用HTML5而不是本地开发。他们可能都错了,但这种情况很少发生。很明显,HTML5的性能不是很好

    这取决于你。本机应用程序非常稳定。请看这个链接我都同意,只想补充一件事5。更新卡住是phonegap的噩梦。如果你的应用程序比我们的更大,并且你使用的框架和东西与你所依赖的不同,例如:cordova、ionic、插件、你正在使用的npm软件包、你正在使用的grunt软件包。一切都取决于一切,几乎不可能跟上所有这些,也不可能让你的应用程序正常运行。其中一些组件将阻止您更新其他组件。例如,一些插件仍然不支持新的Android版本,您无法更新。@mommcilo,补充道,谢谢,我完全同意(我忘了!奇怪,啊?XD)@mommcilo不同意。当操作系统版本更新时,使用他人构建的插件的本机应用程序也需要等待更新。这只是时间问题,js的调试是在浏览器中完成的。看见