近年来,移动应用得到广泛发展,尤其是基于Android与IOS的应用如雨后春笋般爆发。我一直都想涉足这一块的开发,但身为一个.Net开发人员,要从新开始学习Java或ios,时间成本的耗费无疑是巨大的。那么能不能使用.Net来进行Android或IOS的开发呢?Novell公司为我们带来了福音,其开源项目Mono为我们解决了这个难题。它的MonoDroid和MonoTouch正是针对这两个平台的两款开发插件。怀着兴奋的心情,我决定先对MonoDroid进行研究,有兴趣的朋友可以跟我一起学习,大家共同成长。
首先是要对开发环境进行搭建,大家可以参考官方的安装向导:http://mono-android.net/Installation ,当然为了方便大家,我以下列出了各个exe的下载链接,大家可以直接下载。(注意:目前MonoDroid只支持C#语言,而且只能用于VS2010 Professional, Premium, 或Ultimate,Express不能使用)
第一步要安装的是jdk,点击下载,该版本是jdk6u24.
第二步要安装的是android sdk。首先点击下载 Android SDK and AVD Manager,这是管理Android SDK的工具。安装时点"Next",可能会提示你未安装jdk,如果你第一步确实已经安装了jdk的话,那么点击"Back"再次点击"Next"就可以了。安装完以后运行SDK Manager。在弹出的Choose Packages to Install对话框的左边列表必须选择:
Android SDK Tools, revision 10(这个可能已经安装上了)
Android SDK Platform-tools, revision 3
至少选择:
SDK Platform Android 2.2, API 8, revision 2
如果还需要其它版本的Android,可以选择,但我后来测试2.1时发现会报错,而且为了节省硬盘空间和安装时间,选择2.2就足够了。
然后点击Install。等着吧……它会一个一个下载,下载完以后再进行安装……如果想下得快一点的话,可以到google搜索“加快Android SDK and AVD Manager下载速度",就可以安装里面的方法用迅雷进行下载。
第三步,等到所有的SDK都安装好了以后,由于Android开发要使用模拟器进行模拟测试,所以要进行模拟器的配置。在Android SDK and AVD Manager的左边选择”Virtual Devices“,
点击"New"添加一个模拟器,以下是我的配置,大家可以参考一下:
第四步,安装Mono for Android插件,点击下载,目前版本是9794,为保持最新版本,请大家还是到官网下载。记得安装前把所有Vs2010关掉。
好了,所有准备工作完毕,开始我们的第一个MonoDroid Hello World程序吧~~~打开Vs2010,点击新建项目,可以看到已安装的模板里的Visual C#下多了个Mono for Android,选择Mono for Android Application,然后名称起为FirstMonoDroidApp,点确定。
我们啥都不干,直接按Ctrl+F5运行程序,这时会弹出如下"Select Device”对话框:
点击“Start emulator image",弹出"Start emulator"对话框,这里列出了你在第三步增加的模拟器,如果你第三步没有增加模拟器,在这里也可以通过点击”Create new emulator image"来新增。选择你要使用的模拟器,点击OK。
这时模拟器就会运行起来,并且闪过三个命令行窗口,第三个命令行窗口还会提示“Error loading preferences",当时我以为运行错误了,而且模拟器就停留在下面这个界面,我就很郁闷地把模拟器关了,后来才知道,这根本不是出错了,而是模拟器正在模拟手机开机,正在启动呢……所以大家千万别像我这么愚蠢,静静等待模拟器启动完毕吧:
模拟器完全启动以后,回到”Select Device"对话框,点击OK,这步很关键,当时我就是没做这一步,导致我的Hello World迟迟出不来。点击OK以后,MonoDroid就会先把你的应用程序打包,往模拟器里安装Mono运行时,再把你的程序拷贝到模拟器中,这个过程会比较耗时,我尤其是在安装Mono运行时的时候,所以请大家耐心等待。完了以后这个对话框会自动关闭的。如果界面停留在”Copying application to device..."花费比较长时间的话,建议把它关掉再重新运行一次程序。
好了,如果一切顺利的话,我们的程序就跑起来了,看看效果,还不错吧~~~
转载http://blog.csdn.net/ojlovecd/article/details/6289943