VS多平台开发

Xamarin技术文档------VS多平台开发

 

此技术业余时间研究,仅供大家学习参考,不涉及深入研究,有一定开发基础的人员,应该都能较快上手。

 

一、简介

    Xamarin始创于2011年,旨在使移动开发变得难以置信地迅捷和简单。Xamarin的产品简化了针对多种平台的应用开发,包括iOS、Android、Windows Phone和Mac App。Xamarin由许多著名的开源社区开发者创立和参与,而且也是Mono项目的主导者--C#与.NET框架的开源、跨平台实现。

  作为一个跨平台开发框架,Xamarin.Mobile有很多优点。在这一框架内,开发iOS、Android、Windows Phone和Mac App应用可以不用转到Eclipse 或者额外购买Mac并使用Xcode,而继续在Visual Studio之中使用C#与.NET Framework进行。

 

二、Xamarin开发

    Xamarin Studio是一个用C#语言开发跨平台应用的集成开发环境,它和iOS以及Android SDK紧密整合。Xamarin Studio提供了很多现代开发所需功能,包括代码完成、调试器、打包和发布应用(支持通过TestFlight发布应用程序)。对于Android,Xamarin还包含了自己的UI生成器(对于iOS,则使用苹果Xcode的UI生成器),此外还集成了Git和Subversion。开发者可以使用Xamarin Studio在模拟器和真机上对移动应用进行测试和bug调试。Xamarin Studio能够完美支持Windows和Mac。Visual Studio

  Xamarin还提供了for vs2010 vs2012的插件,这个是比较吸引人的地方。该插件可以很好地与微软的生态系统集成,可以在Mac OS机器的仿真器上进行远程调试和测试。在Mac OS上,因为iOS的现有限制,面向iOS的C#代码会通过AOT编译技术直接编译为ARM汇编代码。而在Android上,应用程序会转换为IL,启动时再进行JIT编译。

但插件里面只有Android\iOS类型的项目,更多其它平台上的项目都没有。iOS的项目的编译和调试需要Xcode支持,则说明还需要一台Mac的系统以及Xcode环境,以及一个装在Mac上的辅助软件Xamarin.iOS,Xamarin.iOS是运行在Mac上的软件,用来负责编译和调试软件,并且把结果通过socket通信反应到IDE上。但官方并没有提供这个软件的下载或试用,是购买授权用户的特权。

 

下面进入正题:

我要讲的是,如何运用Xamarin插件在VS2010及以上版本进行开发安卓和IOS项目。

下面我以安卓为例:

首先,在Windows 电脑上,安装XamarinInstaller.exe 应用程序。(如:图1-1)

VS多平台开发_第1张图片

                              (图:1-1)

安装完成之后打开VS2010,点击“文件”-“新建”-“项目”,我们就能看到已经可以创建安卓和IOS项目了。(如:图1-2)

 

VS多平台开发_第2张图片

                               (图:1-2)

现在我们创建一个安卓项目看一看。(如:图1-3)

VS多平台开发_第3张图片

 

 (图:1-3)

在图:1-3中,

左侧工具箱,提供了一些常用的控件,便于项目开发。

右侧解决项目-“Resources”-“layout”-Main.axml页面就是这个项目的首页界面。

后置代码则是写在:MainActivity.cs文件里面。(如:图1-4)

VS多平台开发_第4张图片

 

      (图:1-4)

下面要注意两个方面:

第一、在界面中你拖放了控件之后,每次在写后置代码之前,必须先重新生成一下解决方案。这样才会把你在界面中拖放的控件实例生成在“Resources”-Resource.Designer.cs文件里面。然后你在后台代码中才能找到你要的控件。

第二、调试安卓项目的时候,需要有三处版本对应。(如:下面3张图)

VS多平台开发_第5张图片

VS多平台开发_第6张图片

VS多平台开发_第7张图片

以上3处版本对应之后,按F5就能出现安卓模拟机界面(如:图1-5)

VS多平台开发_第8张图片

 

 (图:1-5)

 

基本的就介绍到这里,有兴趣的可以自己再深入研究。

下面附上几个参考链接地址:

http://xamarin.csdn.net/

http://msdn.microsoft.com/zh-tw/vstudio/dn394307.aspx

http://www.cnblogs.com/shanyou/archive/2013/02/21/2921301.html

 

你可能感兴趣的:(开发)