第1章  Xamarin开发Anroid应用介绍

如今智能手机已经盛行了好几年,而针对这些智能手机的软件开发也变得异常火热。但是在Android平台下只能使用Java开发,iOS平台下也只能使用Objective-C或Swift开发本文选自Xamarin Android开发实战上册。

对于那些C#程序员却只能眼看着这些火热的平台流口水。在几年前只能重新学习一门新的语言,才可以进入这些智能手机开发行业。现在,我们有了Xamarin。C#程序员不需要了解其它语言,就可以开始编写Android、iOS或Windows Phone平台下的软件。在本章中,读者将了解使用Xamarin开发Android应用的必备知识。

1.1  Xamarin基本知识

在使用C#开发Android应用时,必须使用Xamarin。在开始使用Xamarin前,需要对Xamrin有一定的了解本文选自Xamarin Android开发实战上册。

1.1.1  Xamarin发展

Xamarin由Mono、Mono Touch和Mono For Android开发而来。Xamarin的出现主要是为了实现C#开发跨平台的移动应用。从现在也可以看出,Xamarin确实实现了跨平台的应用开发。实现了一次编写,多平台发布。Xamarin是Mono项目的一个分支,但Xamarin并不像Mono一样是开源的,Xamain是一个商业项目,在使用时需要缴纳一些费用。

早在2000年4月份,微软公司发布了他们的.NET框架。而Miguel De Icaza的Ximian开始审查其是否可以支持Linux版本。经过一年的审查,在2001年7月19日,Mono开源项目开始启动。后来,Ximian被Novell公司在2003年8月4日收购,而Novell则在2011年4月归于Attachmate之下。在归于Attachmate之下后,Attachmate裁掉了很多人,其中包括大量的Mono开发者。这样,一些Mono中的问题也搁置起来。

到了2011年5月6日,Miguel De Icaza在他的博客上宣布Mono将通过Xamarin开发和支持。这意味着一个新的公司会发布一个适用于移动开发平台的产品。最后,Miguel De Icaza将最初的Mono团队带到了新的公司中。随后在解决了Mono Touch和Mono for Android的问题后,Xamarin也提供了完整的技术支持。

在2012年12月,Xamarin发布了Xamarin.Mac和为C#程序员提供的MonoDevelop集成开发环境。在2013年2月,Xamarin宣布发布Xamarin 2.0。该发行版包含了两个部分:Xamarin Studio,其中包含了过去Xamarin的所有内容,包括iOS、Andriod和Apple OS X开发工具;集成了Visual Studio中微软的.NET框架,并允许Visual Studio在Windows系统中,使用并创建iOS和Android的应用。

在整个发过程中,Miguel De Icaza功不可没,没有Miguel De Icaza也没有Xamarin的今天。而Xamarin也成了C#程序员的福音,并且为C#跨平台的功能提供了可能。

1.1.2  Xamarin工具

Xamarin提供了很多产品和工具,如Xamarin.Forms、Xamarin Test Cloud、Xamarin for Visual Studio、Xamarin Studio、Xamarin.Mac和.Net Mobility Scanner。而最主要的就是使用Xamarin平台开发程序。

q  Xamarin Platform:它是Xamarin 2.0,发布于2013年2月,将以前单独的iOS、Andriod和Mac OS X开发工具统一到一个平台中。Xamarin.iOS和Xamarin.Andriod使得在Windows上可以通过Xamarin Studio或Visual Studio开发本地的iOS、Andriod和Windows应用。开发者可以重复利用自己的C#代码到不同的平台上,并且不需要做太多的修改。

q  Xamarin.Forms:在2014年5月8日被引入Xamrin 3中。它允许使用便携式控制子集映射到本地控制Android、iOS和Windows Phone。

q  Xamarin Test Cloud:Xamarin的测试云,可以模拟真实不同机型的UI操作,用于测试用户的应用是否可以正常运行。

q  Xamarin for Visual Studio:Xamarin申明该软件只包含iOS、Andriod和Windows,IDE插件,该插件主要用于Visual Studio,允许程序员通过Visual Studio创建并运行iOS、Andriod和Windows应用。

q  Xamarin Studio:Xamarin标准的移动端IDE平台。作为Xamarim 2.0的一部分发布于2013年。

q  Xamarin.Mac:这是Mac OS下的一款开发软件,该软件可以在Mac OS中进行开发移动端程序,不论是iOS还是Andriod。

q  .Net Mobility Scanner:.Net Mobility Scanner可以让开发看到自己的.NET代码中有多少内容是可以运行在其它系统中的,特别是iOS、Andriod和Windows Phone。该功能使用了Silverlight并且是免费的本文选自Xamarin Android开发实战上册。

Xamarin开发Anroid应用介绍的更多相关文章

  1. 【Xamarin开发 Android 系列 3】循序渐进的学习顺序

    原文:[Xamarin开发 Android 系列 3]循序渐进的学习顺序 指定合理的学习步骤,将各个技术点进行强化.慢慢 的就从点到线 到面的飞跃,一切仅仅是时间问题,开始前,请记住,学习是最佳的投资 ...

  2. Xamarin开发Android应用打包apk

    Visual Studio中用Xamarin开发Android应用,生成apk文件有3种方法 1.debug时,代码目录下bin\Debug中会自动生成调试用***-Signed.apk文件,但是文件 ...

  3. 老司机学新平台 - Xamarin开发环境及开发框架初探

    随着被微软收购,最近一年间,Xamarin的火爆程度与日俱增.免费.更好的VS2015集成.更好的模拟器,甚至,在windows上运行和调试iOS平台程序,让我这样接触了十几年.NET平台的老司机,即 ...

  4. Xamarin Android教程如何使用Xamarin开发Android应用

    Xamarin Android教程如何使用Xamarin开发Android应用 在了解了Xamarin和Andriod系统之后,下面我们需要了解一下如何使用这些工具和系统来开发我们的应用程序. And ...

  5. 【Xamarin挖墙脚系列:Xamarin开发环境配置需求】

    原文:[Xamarin挖墙脚系列:Xamarin开发环境配置需求] 前言 因为操作的全是大块头,加大你们的内存,CPU网上飙.... 卤煮的机器配置  最近的版本部署包,百度云离线下载:版本:Xama ...

  6. 【Xamarin开发 Android 系列 13】 应用打包部署

    原文:[Xamarin开发 Android 系列 13] 应用打包部署 开始倒叙咯................ 先更新大宝部署吧,这个章节比较的Easy,童鞋们不用费脑筋.点解?从界面上填写几个参 ...

  7. 【Xamarin开发 Android 系列 2】VS2015跨平台开发的几种方式

    原文:[Xamarin开发 Android 系列 2]VS2015跨平台开发的几种方式 在微软Build大会上,微软宣布在VS2015中支持三种方式进行跨平台的开发. 1. Xamarin 2. Co ...

  8. 【Xamarin开发 Android 系列 1】环境部署搭建

    原文:[Xamarin开发 Android 系列 1]环境部署搭建 开篇自然先扯一段,近几年移动互联网如果熊猫零食一样,蔓延迅速.楼主身为一个微软忠实的粉丝,无奈,老爹不给力.Silverlight开 ...

  9. Xamarin开发教程如何使用Xamarin开发Android应用

    Xamarin开发教程如何使用Xamarin开发Android应用 如何使用Xamarin开发Android应用 在了解了Xamarin和Andriod系统之后,下面我们需要了解一下如何使用这些工具和 ...

随机推荐

  1. cf.295.B Two Buttons (bfs)

     Two Buttons time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...

  2. cpu和内存的关系

    CPU是负责运算和处理的,内存是交换数据的.当程序或者操作者对CPU发出指令,这些指令和数据暂存在内存里,在CPU空闲时传送给CPU,CPU处理后把结果输出到输出设备上,输出设备就是显示器,打印机等. ...

  3. HNU 12817 Shipura(表达式求值)

    题目链接:http://acm.hnu.cn/online/?action=problem&type=show&id=12817 解题报告:定义两种运算符号,一种是>>,就 ...

  4. xcode6 使用MJRefresh

    1. MJRefreshConst.m 里面 会报错: unknown type 'NSString'... 原因:  xcode6 取消.pch文件, 所以没有导入 foundation和uikit ...

  5. previous_changes方法

    [27] pry(main)> c = Channel.find 6 => #<Channel id: 6, title: "会员", cid: "96 ...

  6. POJ 1797 Heavy Transportation (Dijkstra变形)

    F - Heavy Transportation Time Limit:3000MS     Memory Limit:30000KB     64bit IO Format:%I64d & ...

  7. 【分布式存储】GlusterFS failing to mount at boot with Ubuntu 14.04

    GlusterFS failing to mount at boot with Ubuntu 14.04   Previously I asked about mounting GlusterFS a ...

  8. 【OpenStack】OpenStack系列10之Horizon详解

    一.参考其他资料即可.可以采用haproxy+apache+horizon方式部署,haproxy/httpd支持ssl.

  9. 面向侧面的程序设计AOP-------《一》概述

    Aspect-Oriented Programming(面向方面编程,AOP)正好可以解决这一问题.它允许开发者动态地修改静态的OO模型,构造出一个能够不断增长以满足新增需求的系统,就象现实世界中的对 ...

  10. 在Sharepoint 2010中启用Session功能的说明文档

    在Sharepoint 2010中启用Session功能的说明文档 开发环境:Windows 7系统,SharePoint Server 2010,Visual Studio 2010 按以下步骤进行 ...