html5和xamarin有什么区别?

时间:2012-02-23 07:46:37

标签: android iphone html5 mobile

我是C#.NET开发人员。

我想开发可在iphone,Android和Windows手机上运行的移动应用程序。

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

html5和xamarin有什么区别?

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

4 个答案:

答案 0 :(得分:5)

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

答案 1 :(得分:5)

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

如果需要外部库 - 我认为PhoneGap可能比MonoTouch更独立于平台 - 我只进行了iOS开发,但我相信Android Mono库的结构有点不同所以不一样也不合理应用的UI部分的代码库。但在这种情况下,您可能会坚持使用HTML5并将所有代码放在服务器上。

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

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

答案 2 :(得分:2)

好吧,他们完全是两件完全不同的事情。

简要地:

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

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

所以你可以说xamarin (可能)使用HTML5作为最终输出,但就是这样。与html5实际上没有任何共同之处

答案 3 :(得分:2)

以下链接将提供有关Monodroid的更多信息(这是Xamarin使用.NET开发Android应用程序的解决方案):

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

希望这有帮助!