Xamarin是一个基于Mono的商业项目,你可以用它在Visual Studio环境下用C#来开发跨平台应用,例如Android、iOS;
之前很长的一段时间,Xamarin都是作为一款收费软件存在,收费并不低,但是在Build2016开发者大会上,却爆出了一个很值得高兴的消息,那就是Xamarin被微软收购,大会刚结束,我再前往Xamarin的网站,“试用下载”已经变成了“免费下载”。
很多朋友都摩拳擦掌跃跃欲试,想试试这个“传说中”的家伙……
很多朋友其实在VS2015的Preview版本里就看到了Xamarin,但是却发现它的安装极其困难,原因嘛,其实很简单,因为VS即便是iso的安装光盘,依然有很多东西是需要在线安装的,Xamarin也是其中之一,而Xamarin安装的时候会在线下载Android SDK,一听到这个,很多朋友应该就明白了吧?谷歌的东西,谁能说得清呢?呵呵!
SO,如果你想尝试这个大家伙,最直接的办法就是搬个梯子,然后爬上梯子,坐在上面,再打开Visual Studio的安装向导进行安装。当然,也有像我这样的老人家,爬不到那么高的地方,怕摔跤,怎么办呢,那就离线安装吧。
我们现在先假设你已经有了Visual Studio(寡人建议各位使用VS2015或以上版本)的安装包,并且安装了标准组件(Xamarin肯定暂时是没有勾选的啦,如果有条件的话可以把Visual Studio Emulator for Android装上,这玩意是用HyperV来跑的Android模拟器,感觉还不错),现在正准备安装Xamarin,那么:
首先你可以按照以下步骤操作:
- 准备一个小梯子,不用大梯子,影那个什么就行了。
- 打开http://xamarin.com/installer_assets/v3/Windows/Universal//InstallationManifest.xml
- 找到各个<Url>节点,用迅雷(当然你也可以用其他神器)下载它们(老夫掐指一算,大概你可能需要下载到:32位的jdk、Android SDK、AndroidNDK、Xamarin.VisualStudio)
- 去https://www.xamarin.com/download 下载xamarin的安装向导(PS:有些同学可能填写名字的时候会遇到说名字不正确,这是老外的网站啦,老外名字是有空格的)。
- 电脑上如果没有安装jdk或者安装的jdk跟刚刚xml文件里版本不一样的话,先安装刚刚下载的jdk。
- 接着运行Android SDK的安装向导,安装Android SDK。安装完成后运行Android SDK管理器,根据上面的xml文件的<Platforms>节点(我这里是15、19和21,未来更新版本的话可能会有变化。当然,如果你闲得疼,可以像我一样全部勾上,才66G而已哦)下载相应的sdk。如果下载慢的话,可以前往 AndroidDevTools 学习先进的离线下载经验。
- 下载完成以后,运行Xamarin安装向导,如果他报错,就爬上楼梯使用上帝视角,全局观望。
- 出现以下界面的时候,取消
- 打开%Temp%\Xamarin\downloads文件夹,把刚才下载的那几个玩意丢进去(注意名字不要错,也就是url尾部那个文件名,例如android-ndk-r10e-windows-x86_64.exe,别改成其他的)。
- 再次运行Xamarin安装向导,这时候再次安装他就不会再跑去下载东西了,而是直接啪啪啪地安装。最后会出现下面的样子的时候,就代表一切OK啦。
- 当然,如果运气不好,安装器安装失败的话,你也可以手动把ndk和Xamarin.VisualStudio安装上去,然后去Visual Studio的设置里面,找到Xamarin配置节点将jdk、android sdk、ndk的路径填写进去即可。
最后来晒一晒:
在Tools->Xamarin Account下登录帐号,我们会发现不会再来找你要钱啦,也不再是新手30天版了,而是和VS平起平坐的(赞微软一个)。
iOS:
可能大家要失望了,因为截至目前为止,Build大会上传说得很牛的iOS原生模拟器并没有出世,想要iOS开发的话,你依然需要一台Mac作为Build Host,去MacOS里面将远程登录打开(目前暂时不知道Mac上需不需要装Xamarin Studio,因为这个mac上我老早就装过Xamarin Studio)。
回到VS配置Agent:
然后就可以享受“宇宙第一无敌IDE”的便利啦,拖控件,双击绑定事件,然后写代码。
await async也是可用的:
Android:
不得不说,HyperV下的Andoird x86镜像,真是顺畅。
不论是iOS还是Android,TPL、Linq以及vs断点调试(这三大功能是我比较关心的功能,所以就列举了这3个)都是可用的。不得不说,Visual Studio配上ReSharper,真是让我爱不释手,哈哈。
当然,其他好玩的东西肯定是还有的,比如用Xamarin.Forms来整合开发三大平台的APP,并且只需要做一次界面:
更多好玩的东西,各位可以亲自去尝尝鲜。至于好玩与不好玩,牛逼与不牛逼,好用不好用,在下不作评价,每个人心中都有一个自己的哈姆雷特,所以,大家开心就好。