我想为iOS,Android和其他平台开发一些移动应用程序。我研究了适当的现有解决方案,并找到了两个类似的工具: phonegap 和 calatrava 。任何人都可以向我解释它们之间的主要差异吗?
答案 0 :(得分:6)
Phonegap和Calatrava是完全不同的框架。
Phonegap是html / javascript / css应用程序的原生包装器,这意味着您可以创建应用程序,就像您为Web开发它们并将它们打包为本机移动应用程序一样。 Phonegap UI在UIWebViews中以html / javascript运行,不使用本机UI组件。 Phonegap有一堆javascript接口,可以显示不常见于网络的本机功能,例如摄像头和警报。
Calatrava是一个由Thoughtworks人员编写的新的跨平台框架,其意图与phonegap不同。虽然phonegap是“一次编写一次运行”框架,但Calatrava旨在为您提供共享应用程序逻辑的好处,同时为您提供使用完全本机视图或Web视图的选项。在Calatrava中,应用程序逻辑用javascript编写(实际上是coffeescript),视图可以用html / javascript或用于iOS的Objective C或用于Android的Java编写。一种常见的做法是在Calatrava中为Web开发整个应用程序,然后逐步用移动设备的本机UI替换视图。