我开发了基于HTML5 + CreateJS的webapp(游戏),但由于Android缺乏标准,我的webapp遇到了无法解决的问题。这就是我重复使用PhoneGap的原因。
然而我的困惑在于,我需要将这个游戏变成一个在Android / iOS上运行的phonegap应用程序,用于每个平台本机特定的东西。
那么,我应该重新构建2个应用程序(每个平台一个),还是使用我拥有的应用程序并尝试使用phonegap将其部署到不同的设备中?
事实是我不知道如何解决这个问题......任何人都可以帮忙吗?
最诚挚的问候。
答案 0 :(得分:3)
是的,您可以使用Cordova(PhoneGap)创建跨平台移动应用。基本上,Cordova(PhoneGap是Adobe的Cordova版本)是一个开源项目,提供用于访问本机设备功能的JavaScript API(如Accelerometer或Camera。)Cordova还允许您将应用程序打包在本机应用程序shell中,因此您将应用商店中的应用。请在此处查看有关Cordova和混合应用的其他答案:Beginning with Apache Cordova
如果游戏完全在HTML5中运行,我认为最简单的方法是使用一个代码库并将其与Cordova集成,然后部署到各种平台 - 如果您不需要,可以重写应用程序两次? / p>
但是,如果您使用的是本机设备功能,则可能需要开发自己的Cordova / Phonegap插件才能使用。这样,您可以使用JavaScript调用从Web应用程序代码编写的常规Android / iOS代码(Java或Objective-C代码)。这可能是更多工作,特别是如果您从未使用这些语言编写过。
就个人而言,既然你已经有了一个可用的HTML5应用程序,我只是试着让它与Cordova一起工作,看看它是如何运作的。如果你真的需要一些本地特定的东西,那么我会尝试创建这个“东西”作为插件。重建应用程序两次,一次用于Android,一次用于iOS,这对我来说似乎是浪费时间。
答案 1 :(得分:1)
答案是肯定或否定。
是,如果您想使用本机代码的某些特定功能。例如,iOS的默认对象本身很漂亮,您可以轻松拖放它来构建您的应用程序。但是,重建另一个平台需要花费大量时间。特别是,如果您打算为多个平台创建应用/游戏,那将是一场噩梦。
HTML5可以更快地接近多个平台。但是,您无法在所有平台和所有设备上获得最佳结果。我的意思是,在所有设备上实现应用程序的最高性能真的很难。对于这个解决方案,我建议HTML5与一些库,如LimeJS,Crafty,Impact等,或者一些工具,如Construct 2等。我曾经使用HTML5与所有这些库,但发现Construct 2更好。< / p>
我推荐使用cocoonjs,而不是使用phonegap。特别是如果您的目标是iOS和Android平台。
希望有所帮助。
答案 2 :(得分:0)
是的,即使是像泡泡破坏者这样最简单的游戏也很难用不同版本的android webview制作跨平台,你需要跨平台吗?我建议调查像Unity3D这样的东西。