我应该使用PhoneGap而不是在Android SDK上升级吗?

我应该使用PhoneGap而不是在Android SDK上升级吗?,android,cordova,Android,Cordova,虽然我熟悉Java,但我在web开发方面有更多的经验。我希望进入简单的Android游戏编程领域 我是否应该使用Javascript/HTML编写所有程序,而忘记在Java/AndroidSDK上升级?我想我的问题是,PhoneGap的局限性是什么?有什么要考虑的事情,等等? 我可以想到一些好处: HTML5/JS游戏引擎方面的更多选择 更快的爬升时间 自动部署到所有主要平台 Phonegap的优点: 部署到所有主要移动设备 听起来它最适合你的技能 使用统一的代码库涵盖大多数可用的平台API

虽然我熟悉Java,但我在web开发方面有更多的经验。我希望进入简单的Android游戏编程领域

我是否应该使用Javascript/HTML编写所有程序,而忘记在Java/AndroidSDK上升级?我想我的问题是,PhoneGap的局限性是什么?有什么要考虑的事情,等等?

我可以想到一些好处:

  • HTML5/JS游戏引擎方面的更多选择
  • 更快的爬升时间
  • 自动部署到所有主要平台
Phonegap的优点:

  • 部署到所有主要移动设备
  • 听起来它最适合你的技能
  • 使用统一的代码库涵盖大多数可用的平台API,无需了解每种API
  • 电话差距构建(https://build.phonegap.com/)科尔多瓦呢(https://github.com/brianleroux/Cordova)使部署到多个平台变得更加容易
Android的优点:

  • 更好的性能
  • 对您可以使用的API(即视频)没有限制
  • 定义的工具集和工作流
  • 本机UI组件
  • 片段API和本机布局使处理不同的屏幕尺寸更容易

这实际上取决于你是否想成为一名只使用Android的开发者。phonegap的第一个优点是你计划为多个平台开发。phonegap最大的优点是它利用了你的web开发经验。我认为大多数人似乎忽略了(或忽略了)一点,那就是对于只使用android的应用程序来说,避免phonegap没有任何优势!您仍然可以编写任意多的本机代码,任意混合和匹配phonegap

我正在编写一个Android应用程序,它使用文本到语音。由于Phonegap在其API中不支持这一点,您可能会认为Phonegap是一个错误的选择,但实际上,从javascript调用我需要的Java代码非常容易:

Java代码:

public void onCreate(Bundle savedInstanceState) {
   //boilerplate and TTS set up
    ...
    this.appView.addJavascriptInterface(this.speak, "speak");
    ...
}

public void speak(String text) {
    this.tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
}
Javascript代码:

speak.say("hello world");

我个人对PhoneGap应用程序与原生Android应用程序相比的性能有很大的担忧。无可否认,我所做的少量测试使PhoneGap版本与本机版本相比感觉非常迟钝。我不认为这不会转化为糟糕的用户体验。即使是PhoneGaps打包的示例应用程序也运行不佳


我对PhoneGap出现的可能性感到非常兴奋,但我觉得它还没有出现。我不喜欢在PhoneGap上做一个大项目。

不可能!Adobe有他们的云构建,其文件大小限制为9.5MB。而且,他们正在停止支持其他类型的构建

我刚刚花了一周左右的时间使用PhoneGap开发了一个简单的Android应用程序。我最大的希望是能够将此产品推荐给我们部门,作为“一次编写,随处部署”的解决方案

实际上,这比我希望的要复杂得多。我确实成功地完成了Android版本的应用程序,但我发现在使用基本的东西时有很多怪癖,比如让它包含css和jquery移动框架。我一直认为这只是我的学习曲线,但我在网上找到的很多教程都过时了,在我下载的版本中也不起作用。最令人惊讶的是,如果不使用诸如childBrowser之类的插件,就无法链接到外部文档,这是一个巨大的缺点

我今天尝试将我的应用程序移植到iOS,但无法通过导入css的第一步。我找不到有关此基本步骤的任何支持文档。这很令人沮丧,因为这是一个简单的应用程序,我可以在一天左右的时间内用Xcode制作成原生程序。看来我使用PhoneGap的时间要长得多


PhoneGap看起来很有前途,但目前我不想使用它。这只是时间问题。为什么我要花两倍的时间在某件事上?在未来的版本中,这可能是一个更好的选择

我完全同意你的观点,但我正在进行的phonegap项目速度较慢。与本机应用程序相比,它的性能较慢。any1是否有解决方案。wtf黑魔法是什么?Javascript调用java函数。令人惊叹的