Phonegap与MonoTouch / Droid

时间:2012-08-21 09:20:44

标签: android ios mobile cordova cross-platform

我们有一个即将推出的[大]项目,涉及一系列移动应用程序。不幸的是,我们仍然是这个市场的新手。我们最大的问题是没有学到新东西,而是必须开发两次相同的应用程序,这意味着大约两倍的成本,因此我们正试图找到一个跨平台的解决方案。

由于我们的专业知识是C#和.NET,我们对MonoDroid / Touch非常感兴趣,而且据我所知,它是一个成熟的框架。 然而,它并不完全是跨平台的(或者我错了吗?)因此我们转向Phonegap,它允许您使用js,css和html构建移动应用程序,这些是我们觉得使用的技术。

我们的应用程序将非常数据密集,并且可能还需要由服务器“调用”,即服务器和应用程序之间可能存在双向通信。

所以我的问题,鉴于这类应用,你会建议使用phonegap还是monoTouch / Droid?

提前致谢。

3 个答案:

答案 0 :(得分:5)

  1. Monotouch不是跨平台的。它允许您创建可重用的元素,但是您无法构建一次并部署到所有平台,特别是如果您的项目非常复杂,并且使其发声。

  2. 我不太了解phonegap。我总是避开它。自从我最后查看它以来它可能已经发生了变化,但是当我收集它时并不是非常强大并且不会创建非常好的应用程序,尤其是(再次)复杂的应用程序。

  3. 还有另一个名为Titanium的跨平台框架,但与上述两者类似,并不是很好。每天都有更多的支持,但它缺少一些关键组件,你往往会进入一个项目,并意识到你无法进一步。

  4. 我的回答是你不想听到的,你应该分别为每个平台做这件事,并向你的客户收取费用。

    创建一个移动应用程序跨平台就像创建一个适合每个人的T恤。好吧,所以你可以让它变得有弹性,你可以用一种“适合”每个人的方式来设计它,但你最终会得到的东西是太大或太小,没有人会享受。

    iPhone,Android,iPad,黑莓,windows phone 7,bada等等,它们都是非常不同的平台。仅仅因为它们都是手机并不能使它们相似。 UI的设计和显示方式各不相同,与硬件(最终用户)交互的方式也不同。大小写和点 - iPhone在您向下查看时创建一个导航堆栈,您可以使用标题栏中的后退按钮进行导航(其中包含当前视图的标题)。 Android您可以使用设备上的后退按钮进行导航,操作栏用于应用程序标题和其他“操作按钮”。

    为此我建议,如果你真的不想做本地的一切(这绝对是最好的选择),那么我建议看看Monotouch并用可重复使用的组件创建两个应用程序。

答案 1 :(得分:5)

使用PhoneGap,您将创建一个Web应用程序。它看起来像本机应用程序,但它实际上是在浏览器对象中运行的Web应用程序。

您将编写客户端HTML和JavaScript,就像任何其他客户端Web应用程序一样。您可以创建对服务器的ajax调用来获取数据并在那里执行所有常用的C#/ .Net内容。

使用Mono,您将创建一个客户端应用程序,您可以使用C#/ .Net对该客户端进行编程。

PhoneGap或多或少是免费的,除了Windows,iOS和Android之外,还可用于其他平台,但您必须为每个版本设置环境。您可以编译云中的所有平台,但这会花费您的钱。

MonoTouch / Droid会让你收回几百美元。

对于每个平台,进行一些额外的调整。可能会给它一个原生的外观和感觉,调用不同的API等等。

我个人会建议Mono路线,因为你已经知道C#/ .Net了。它会更快地为您提供结果。利用MonoTouch的免费试用版,看看它是否适合您,以及是否值得购买(触摸和'droid都是698美元)。

答案 2 :(得分:1)

取决于。

我同意原生为您提供最佳性能和用户体验。如果应用程序具有苛刻的UI,它肯定是唯一可行的选择。但是,如果应用程序更具信息性(例如,可能显示新闻源),那么混合HTML5应用程序就可以了。在iOS上的UIWebView中对HTML5的支持在较旧的iOS版本中有一些怪癖,因此谨慎行事。在Android和其他平台上,HTML5尚未完全实现。当然不适用于没有grunt的旧硬件或浏览器使用次优的javascript引擎。

有了.NET背景,我建议您查看http://www.vsnomad.com并自行评估。一起快速演示,看看它是如何保持的。否则,是的,走本土路线。

相关问题