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


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

     

    一、简介

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

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

     

    二、Xamarin开发

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

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

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

     

    下面进入正题:

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

    下面我以安卓为例:

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

                                  (图:1-1

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

     

                                   (图:1-2

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

     

     (图:1-3

    在图:1-3中,

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

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

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

     

          (图:1-4

    下面要注意两个方面:

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

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

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

     

     (图: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

     

    技术研究,文档编写者:陈海波

    时间:2014.5.29

     

     

     

  • 相关阅读:
    emacs 集成astyle
    git reflog
    rpm 打包的时候 不进行strip
    gmock
    如何对正在运行的进程,进行heap profile
    linux性能压测工具
    默认宏定义
    gdb fabs错误输出
    基于Clang的缓存型C++编译器Zapcc
    grep 多行 正则匹配
  • 原文地址:https://www.cnblogs.com/chenhaibo/p/3807439.html
Copyright © 2020-2023  润新知