Xamarin始创于2011年,旨在使
移动开发变得难以置信地迅捷和简单。Xamarin的产品简化了针对多种平台的应用开发,包括
iOS、
Android、Universal Windows Platform、
Watch OS、
tvOS和
Mac App。Xamarin由许多著名的
开源社区开发者创立和参与,而且也是
Mono项目的主导者——
C#与·NET框架的开源、
跨平台实现。
作为一个跨平台开发框架,Xamarin.Mobile有很多优点。在这一框架内,开发iOS、Android、Windows Phone、
watchOS、tvOS和Mac App应用可以不用转到Eclipse 或者额外购买Mac并使用Xcode,而继续在Visual Studio之中使用C#与
.NET Framework进行。
Xamarin是
mono项目的一个分支,但这里面最大的区别Xamarin曾是商业项目.mono做为跨平台的框架已得到越来越多的商业项目的肯定,令外界担心的
版权问题\u53ef靠性\u7a33定性也得到证实,使用mono最大的好处是可以使用其它平台众多的项目解决方案,而不必被限制在
windows平台下贫乏而又昂贵的各种解决方案.
2016年,Xamarin被Microsoft收购并开源。自2016年起,它与
.NET一样,不收取任何费用或许可费用,包括用于商业用途。
Xamarin已经形成了一个完整的体系,有Xamarin Studio、Xamarin.Forms、Xamarin for
Visual Studio、Xamarin Test Cloud,以及包含前面四个工具的Xamarin Platform。它的目标是 用C#开发跨iOS、Android、UWP平台
原生应用程序。
Xamarin Studio是一个用
C#语言开发
跨平台应用的
集成开发环境,它和iOS以及
Android SDK紧密整合。Xamarin Studio提供了很多现代开发所需功能,包括代码完成、
调试器、打包和发布应用(支持通过
TestFlight发布
应用程序)。对于Android,Xamarin还包含了自己的
UI生成器(对于iOS,则使用
苹果Xcode的UI生成器),此外还集成了Git和Subversion。开发者可以使用Visual Studio(过去则是Xamarin Studio)在
模拟器和真机上对
移动应用进行测试和
bug调试。Xamarin能够在合理的设计下非常好地契合Windows和
Mac。
最早时期,Xamarin只提供for Visual Studio历代的插件,这一度是比较吸引人的地方。该插件可以很好地与
微软的生态系统集成,可以在
Mac OS机器的
仿真器上进行远程调试和测试。在Mac OS上,因为iOS的现有限制,面向iOS的C#代码会通过AOT
编译技术直接编译为
ARM汇编代码。而在Android上,应用程序会转换为
IL,启动时再进行
JIT编译。
IDE上。但官方并没有提供这个软件的下载或试用,是购买
授权用户的特权。市面上也出现了很多基于Xamarin Studio的第三方工具。
现在,Xamarin已完全集成到Visual Studio和Visual Studio for Mac中,支持
iOS、
Android、Universal Windows Platform、
Watch OS、
tvOS和
MacApp。
Xamarin 2.0 特别引入了全新Xamarin Component Store,内含丰富的UI部件、图片、图表、主题、
云服务等素材供下载。Xamarin Component Store中的插件能够和Xamarin Studio以及Visual Studio无缝整合,开发者能够更方便地将这些部件和功能加入到自己的App中去。Xamarin.Mobile是该商店中的组件之一,提供了访问iOS、Android和
Windows Phone等平台公共特性(如
通讯录和相机等)的
API。根据Xamarin提供的信息,如果设计合理,应用程序的代码量最多可以减少90%。并且,它在2016年开源后完全免费。