【问题标题】:What is the difference between html5 and xamarin?html5和xamarin有什么区别?
【发布时间】:2012-03-13 14:51:07
【问题描述】:

我是一名 C# .NET 开发人员。

我想开发可以在 iphone、android 和 windows phone 上运行的移动应用程序。

到目前为止,我发现 www.xamarin.com 提供了一个可以使用 C# 开发 iphone 和 android 的解决方案。

html5和xamarin有什么区别?

我应该使用哪种技术可以开发一次并在所有平台上运行?

【问题讨论】:

  • 请使用搜索按钮,这已经讨论过很多次了。
  • 不想拖旧线程,但 RhoMobile 也是一个不错的跨平台选择。它是一个本机应用程序,但充当一个迷你 Web 服务器,以非常基于模式的方式提供 HTML/RoR。为您提供所有手机本机功能的包装器。根据我的经验,Xamarin 更有趣。 C# 是一种很棒的语言,尤其是从 .NET 4 开始。当今手机上的并行处理意味着您可以非常快速地完成任务。出乎意料的是,使用手机的所有内核并不会浪费电池。您仍然在相同的 CPU 周期内完成相同的任务,但效率更高。

标签: android iphone html mobile


【解决方案1】:

嗯,它们是两个完全不同的东西。

简单地说:

-HTML5 是网页标准,仍在审查中(这意味着它不是最终版本,可能随时变化)

-xamarin 是一个开发跨平台应用程序的框架。这意味着它是一组工具,允许您(在这种情况下)从 C# 和 .net 编写代码并获得移动应用程序(是的,很可能它将是一组带有 js 网页的 HTML5,但我没用过)

所以你可以说 xamarin (可能)使用 HTML5 作为最终输出,但仅此而已。 与 html5 几乎没有共同之处

【讨论】:

  • 我也不太了解 xamarin,但 xamarin 不是制作原生应用程序,而不是 HTML5 应用程序吗? xamarin.com/monotouch
  • xamarin 使用 Mono,它不会创建 HTML5 应用程序。它接近本机代码。 Mono.NET 的开源版本。因此,使用 HTML5 时会感觉更加原生。但是价格有点贵。
【解决方案2】:

主要区别在于 HTML5 可以在浏览器上运行,而 xamarin 不能(据我研究)。使用 HTML5,可以更轻松地在多个设备上进行开发。但是制作本机应用程序的 xamarin 可以访问您设备上的本机功能(如通知等)。但缺点是 xamarin 很难在多个设备上运行。还必须安装本机应用程序,HTML5 应用程序不需要。所以你应该问自己的是,我想制作什么样的应用程序。此外,尚不存在可在所有平台上运行的应用程序。一些 HTML5 框架提供了很大的支持(如 JQmobile),但几乎不可能在所有平台上提供。

【讨论】:

  • 您仍然可以使用 xamarin 制作 html5 应用程序。它是围绕 android 或 iOS SDK 的 c#/mono 包装器
【解决方案3】:

以下链接将更深入地了解 Monodroid(这是 Xamarin 使用 .NET 开发 Android 应用程序的解决方案):

http://monodroyd.wordpress.com/2011/12/04/introduction-to-mono-for-android/

希望这会有所帮助!

【讨论】:

    【解决方案4】:

    我认为在 MonoTouch(由 Xamarin 创建)和 PhoneGap(为 HTML5 提供本机包装器)之间更好地描述您的选择。两者都生成本机应用程序。两者都适用于多个平台。两者都允许链接外部 Objective-C 库。

    如果需要外部库 - 我认为 PhoneGap 可能比 MonoTouch 更独立于平台 - 我只做过 iOS 开发,但我认为 Android Mono 库的结构有点不同,因此拥有相同的库是不合理的应用程序 UI 部分的代码库。但在这种情况下,您可能只是坚持使用 HTML5 并将所有代码放在服务器上。

    如果您需要链接外部库 - 我发现 PhoneGap 比 MonoTouch 容易得多。我可以在与我的其余代码相同的 Xcode 工作区中创建一个 PhoneGap 项目,并且一切都可以很好地编译和调试。使用 MonoTouch,我有许多脚本文件可以创建通用静态库,然后通过笨拙的 gcc 标志链接它们。

    如果您可以留在 HTML5 世界中,我建议您将所有文件托管在服务器上,这样您就可以避免与本机应用程序相关的所有部署难题。但是,如果您需要一个原生应用程序,您可以在任一环境中制作出令人惊叹的应用程序。

    【讨论】:

      猜你喜欢
      • 2011-06-27
      • 2014-04-28
      • 2015-07-24
      • 2020-10-25
      • 2013-03-24
      • 1970-01-01
      • 2015-11-19
      • 1970-01-01
      相关资源
      最近更新 更多