感谢MS, 感谢老纳.终于把 Xamarin 这个磨人的小妖精给收了,在也不用向大神要破解补丁了, 终于可以光明正大的使用了!!

跟据实践, 如果你们想体验一下 .NET 开发 IOS /Android APP, 不需下那个 7G之巨的 VS2015 WITH UPDATE 2 的 ISO, 下了也白下, 里面好像就没有包括最新的 Xamarin.

具体宣布免费使用的版本:

VS 社区版也同样享受这个福利! 所以别 BB说买不起 VS , 我前天花了几个小时, 把破解版换成了社区版, 反正高级功能基本上咱也用不了几下.

另外, 因为 Xamarin for Visual Studio 是独立安装包, 所以不一定非得是 VS2015 的, VS2013 社区版同样支持(我VS2013卸载很久了)

由于 GFW 的威力, 这些东西通过那个 XamarinInstaller 可能无法下载, 这时,你需要打开以下两个XML:

https://static.xamarin.com/installer_assets/v3/Windows/Universal/InstallationManifest.xml

https://static.xamarin.com/installer_assets/v3/Mac/Universal/InstallationManifest.xml
 
一个 WINDOWS, 一个 MAC 的, 就不用解释了吧, 缺少哪个东西,在对应的XML中搜一下,就可以找到下载地址.
 

如果你想偿试 Android

1,下载 Android SDK 安装器:
http://dl.google.com/android/installer_r24.4.1-windows.exe
 
2, 如果更新过程中, 不能忍受龟速, 可以参考:
 
3, NDK 可选, 自行搜索下载地址.
4, 下载 Xamarin for Visual Studio 就成. Xamarin Studio 不推荐使用.
5, Android 模拟器推荐使用 MS 的 Android 模拟器, 不过需要 Hyper-v 支持, 也就是说,必须是 WIN 8 以上的系统.
6, 准备好 android_m2repository_rXX 文件, 编译时, 如果在指定的目录下不存在该文件, xamarin 会主动从网络上下载该文件, 但是在 GFW 下, 99%是不能下载的. 具体放哪个文件夹,  编译失败时, 会告诉你.
具体使用哪些个版本的 m2repository , 根据你的 Android 项目的编译版本而定.
这些文件,各镜像站点一般都能下载的到. 具体自行搜索.
 
 
 

如果你想偿试 IOS

当前你还是需要一台 MAC, 虚拟机也成, MS Build 2016 上所说的 WIN 下的 IOS 模拟器现在还没有现身,现在只能期待一下.
Mono Framework / Xamarin.iOS 是必须的!
那个 Build Host 不需要了, 直接集成在 Xamarin.iOS 中了, 如果需要连接到 MAC 进行编译,你需要:
1, 打开 MAC 的远程登陆:
 
2, 设定可以远程登陆的用户:
3, 在 VS 中连接:
 
4, 连接成功时, 结果是这样的, 
 
如果没有出现 可选模拟器列表, 请检查你是否安装了 XCode, 及 Mac Agent 中, MAC 的连接状态为 已连接:
 
 

Form 还是 Native

说到跨平台, 大家一定都想不就是用 .NET 开发 Android / IOS APP吗?
但是 Xamarin 提供两种开发方式: Native 和 Cross-Platform
 
Native 开发, 做的事情和开发 IOS / Android 做的事情一毛一样! 只不过语法换成了 .NET
也就是说, 用 Native 开发 Android / ios ,你还是要做两套.
 
 
这里的 Cross-Platform 说的是: 一次开发, 运行在多个平台上 (ios / android / wp / uwp), 这个东西就是
Xamarin Forms ,
它的本质就是一堆 Renderer , 即各个平台把 Xamarin Forms 控件翻译成自己平台上的控件.
 
 
Portable 即 Portable Class Labrary , 简称 PCL, PCL 项目会编译成一个独立的DLL,
而 Shared 项目只不过是一个共享文件夹, 编译器会把 Shared 项目的内容编译到引用它的项目中.
 
一般把业务逻辑都放到 PCL 或 Shared 项目中, 因为这一部分是平台无关的!
另外一部分需要个性化的, 或者是自定义控件的 renderer , 都需要放具体的平台项目中去.
 
 

入门

如果用 Native 开发, Android 的,你应该找 Google , IOS 的,你应该找 Apple, 如果你找 Xamarin ,基本你离门是越来越远了.
如果是用 Xamarin Forms 开发, 官方的开发文档是最好的入门指引:
 
https://developer.xamarin.com/guides/xamarin-forms/getting-started/
 
如果你对 WPF 比较熟悉(虽然和 WPF 没有一毛钱关系), 入门还是挺容易的!
 
 

效率

1, 执行效率, 肯定比 H5 的流畅, 当然如果你菜的不行, 这条就当我没说.
2, 开发效率, 如果你是天才, 精通 IOS / Android 开发, 这条当我没说. 如果你只是个苦逼的 .NET 开发人员, 你 TMD 还等什么? 提升的机会来了!
 
 

正式版/免费版 Xamarin 体验与拥抱的更多相关文章

  1. Cocos2d-x v3.0正式版尝鲜体验【1】 环境搭建和新建项目

    Cocos2d-x v3.0在前天最终公布正式版了,等了大半年最终出来了.一直没去碰之前的3.0各种beta,rc版本号,就想等正式版出来再尝试. 昨天也參加了触控科技在成都举办的沙龙活动.看到作者王 ...

  2. Cocos2d-x v3.0正式版尝鲜体验【2】 Android平台移植

    今天没事又尝试了下3.0正式版关于Android平台的移植,把新建的项目移植了下.过程仅用了十分钟左右,什么概念?! 好吧,事实上我想说,这个版本号真的移植非常轻松啊,只是还没加上其它东西,只是就眼下 ...

  3. Cocos2d-x v3.0正式版尝鲜体验【3】 Label文本标签

    Cocos2d-x在新版本号中增加了新的Label API.和以往不同的是,2.x的版本号是通过三个不同的类来创建不同的文本标签,而如今是模仿着精灵的创建方式.一个类创建不同形式的文本,只是核心内容还 ...

  4. .NET Core 2.0和ASP.NET Core 2.0正式版抢先体验

    .NET Core 2.0和ASP.NET Core 2.0正式版抢先体验 .NET Standard 2.0 is final Broad platform support. .NET Standa ...

  5. 初次体验VS2015正式版,安装详细过程。

    本文版权归mephisto和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 文章是哥(mephisto)写的,SourceLink 阅读目录 介绍 安装 其他 本文版权归mephi ...

  6. DEEPIN 2014 正式版 试用体验

    7月6日深度正式发布 Deepin 2014 操作系统,该系统是基于 Ubuntu 14.04 LTS 的 Linux 发行版,并搭载了多款深度开发的软件,更符合国人使用习惯.由于Deepin 201 ...

  7. 体验VS2015正式版

    初次体验VS2015正式版,安装详细过程.   阅读目录 介绍 安装 介绍    纽约时间7月20日,微软发布了vs 2015 正式版,换算到我们的北京时间就是晚上了,今天回到家里,就下下来了,装上去 ...

  8. Python 3.8.0 正式版发布,新特性初体验 全面介绍

    Python 3.8.0 正式版发布,新特性初体验 北京时间 10 月 15 日,Python 官方发布了 3.8.0 正式版,该版本较 3.7 版本再次带来了多个非常实用的新特性. 赋值表达式 PE ...

  9. Python 3.8.0 正式版发布,新特性初体验

    北京时间 10 月 15 日,Python 官方发布了 3.8.0 正式版,该版本较 3.7 版本再次带来了多个非常实用的新特性. 赋值表达式 PEP 572: Assignment Expressi ...

随机推荐

  1. Python标准库(1) — itertools模块

    简介 官方描述:Functional tools for creating and using iterators.即用于创建高效迭代器的函数. itertools.chain(*iterable) ...

  2. android RelativeLayout 动态设置高度

    定义: private RelativeLayout mrlay; 调高度: mrlay = (RelativeLayout) findViewById(R.id.rlay_1); android.v ...

  3. Mac os下换行符导致发布到npm里的命令行模块不能使用问题

    学习node,弄一个命令行模块,发布到npm后,Windows安装后可以使用,但Mac 终端下则不行.对比grunt-cli搞了一夜,甚是郁闷,最后发现竟然是操作系统的换行符问题. npm insta ...

  4. ARM学习篇 SDRAM理解

    1.SDRAM单管存储单元 SDRAM单管电路图 C记忆单元 T控制门管 Z字线 W位线 注:图示为N沟道耗尽型MOS管 写入:Z加高电平,MOS导通,W状态决定了电容C的状态 读出:Z加高电平,MO ...

  5. 扩展欧几里德算法 cogs.tk 2057. [ZLXOI2015]殉国

    2057. [ZLXOI2015]殉国 ★☆   输入文件:BlackHawk.in   输出文件:BlackHawk.out   评测插件时间限制:0.05 s   内存限制:256 MB [题目描 ...

  6. 网络之Ip地址

    0.0.0.0---255.255.255.255 Ip地址分类(D.E)不对外开放 网络类别 最大网络数 IP地址范围(,唯一的,花钱的) 最大主机数 私有IP地址范围 (做内网ip,不可直接访问公 ...

  7. 02章《深入C#数据类型》项目经理评分

    一:创建MyOffices项目,创建UserInfo类,用来存储员工 工号,姓名,年龄,评价,年度得分 二:创建查看评分窗体(frmShow),添加定义员工数组,将员工数据绑定到frmShow窗体的L ...

  8. Deploying an Internet Information Services-Hosted WCF Service

    Deploying an Internet Information Services-Hosted WCF Service .NET Framework 4   Other Versions .NET ...

  9. $(window).load(function() {})和$(document).ready(function(){})的区别

    JavaScript 中的以下代码 : Window.onload = function (){// 代码 }  等价于  Jquery 代码如下: $(window).load(function ( ...

  10. Canon

    .打开压缩包发现2个文件,1个是加密的zip.zip,另一个是music.mp3.猜测zip.zip的解压密码隐藏在music.mp3里 .用MP3Stego解密music.mp3,密码就是标题的Ca ...