1. 更新Android SDK要从VS的工具栏上SDK Manager那里更新,不要像我一样之前搞了好几份SDK放在不同的地方,结果把自己搞糊涂了,更新了半天(真的是花了半天时间)才发现更新的地方不对......

2. 记住这个重要的地址:C:\Users\你自己登陆Windows的用户名\AppData\Local\Xamarin

折腾了两天多,终于搞明白了之前的错误的根源,首先要感谢这位自问自答的朋友,最关键的就是这句话“build-tools跟SDK API相关的,build-tools 23是需要API 23的”,一语惊醒梦中人,原来我之前已经擅自手工把Build-tools更新到版本23了,

但是SDK因为众所周知的原因,(虽然找了一些镜像网站)但是只更新到了22,后来换到mirrors.neusoft.edu.cn,终于找到了Android 6.0 (API 23)的下载,然后就解决了所有问题,终于可以编译通过了!

下面从头详细记一下这次的过程,就算不为别人,为以后的自己也是有意义的。

————————————————————————————————————————————————————————————————————————————————————————————————————

首先,在去年(2014)初和今年(2015)初两次搞过一点Android开发,当时是用Eclipse开发的,Android SDK也是自己手工去下载的离线版本解压的,因为这两次开发中间间隔时间较长,我的习惯又是每次都想用最新的工具,

so每次都会去下载新的SDK,然后放在了不同的地方,而且在这(2014)之前,曾经也想尝试用Xamarin来做做跨平台开发,所以很早的时候也安装过Xamarin,但是有了项目做之后就搁下了,导致计算机上其实有好几份Android SDK的内容,

而且版本各不相同(自己给自己挖了坑还不知道)。

这次大老板来review一年的工作,让我除了本职的Windows开发之外还是要做点其他的准备,比如跨平台开发,让我把某工具改写到Android和iOS下,加上微软开始拥抱开源,大肆宣传Visual Studio+Xamarin可以三大平台一网打尽,

这又逼得我不得不继续拿起Xamarin来,不然以我纯Windows+.NET+C#的功底,再去学java、Object-C、Swift什么的,而且还要继续兼顾我的Windows开发,这是要逼死大叔我啊!所以不管Xamarin现在是什么情况,都必须硬着头皮上了。

至少Xamarin也出来有些年头了,想来应该比前几年成熟些了吧,再加上Xamarin鼓吹的Xamarin Forms连界面都可以三合一,还有什么好说的,只能默念一声阿弥陀佛,上路吧!

下载安装什么的就不多说了,下载了最新的4.0.0.1697版本的Xamarin for Visual Studio,然后注册了账号,开始尝试。目前的环境是Windows 7 SP1 64位旗舰版+Visual Studio 2015 Update 1。

先从编译成功默认项目开始,新建了一个可移植的Xamarin Forms项目,编译就是1000+的错误,没什么,在我的预料之内,凡是和开源有关的东西都是这样,上手都会给你个下马威,能让你用得舒服的开源的东西真心不多。

然后开始更新,先是用Nuget更新组件,把和Xamarin有关的东西都更到最新,然后又是Android SDK,遇到无法更新那是正常的,搜了一下,发现现在比几年前环境好多了,以前不能更新只能想怎么FQ,或者找别人下好打包的,

现在有建镜像服务器的,这下的好处就是随用随下,而且速度杠杠的。推荐一个网址吧:http://www.androiddevtools.cn/

Xamarin官方的更新地址也留一个,以后可能有用
安卓:http://xamarin.com/installer_assets/v3/Windows/Universal//InstallationManifest.xml
苹果:http://xamarin.com/installer_assets/v3/Mac/Universal//InstallationManifest.xml

更新了之后好多了,然后就遇上钉子户了

Xamarin.Forms随手记的更多相关文章

  1. xamarin.forms新建项目android编译错误

    vs2015 update3 新建的xamarin.forms项目中的android项目编译错误.提示缺少android_m2repository_r22.zip,96659D653BDE0FAEDB ...

  2. Xamarin.Forms 简介

    An Introduction to Xamarin.Forms 来源:http://developer.xamarin.com/guides/cross-platform/xamarin-forms ...

  3. Xamarin.Forms 免费电子书

    Xamarin Evolve 正在举行,现在已经放出2本免费的Xamarin.Forms 免费电子书,据现场的同学说这两天还有Xamarin.Forms 重磅消息发布: Creating Mobile ...

  4. 老司机学新平台 - Xamarin Forms开发框架之MvvmCross插件精选

    在前两篇老司机学Xamarin系列中,简单介绍了Xamarin开发环境的搭建以及Prism和MvvmCross这两个开发框架.不同的框架,往往不仅仅使用不同的架构风格,同时社区活跃度不同,各种功能模块 ...

  5. 老司机学新平台 - Xamarin Forms开发框架二探 (Prism vs MvvmCross)

    在上一篇Xamarin开发环境及开发框架初探中,曾简单提到MvvmCross这个Xamarin下的开发框架.最近又评估了一些别的,发现老牌Mvvm框架Prism现在也支持Xamarin Forms了, ...

  6. 使用Xamarin.Forms平台开发移动应用指南

    下载书:链接: http://pan.baidu.com/s/1c29H9KG 密码: 7esm 注:捣鼓虚拟机把Hyper-V关闭,后来Xamarin搞挂了,所以暂停翻译. 第1章 Xamarin. ...

  7. Xamarin.Forms.Platform.Perspex, Xamarin Forms 的 Perspex(号称下一代WPF) 实现

    Perspex, 跨平台的UI框架,加上Xamarin Forms的跨平台的中间层,这样同一套代码就可跨几乎所有已知平台,这其中包括旧版Windows, Linux及Mac OS. 目前,基本控件可显 ...

  8. 为 Xamarin.Forms 做个跑马灯控件

    前段时间,私下用 Xamarin.Forms 做了个商业项目的演示版.很多被国内App玩坏了的控件/效果,XF上都没有或是找不到对应的实现,没有办法只能亲自上阵写了几个,效果还行,就是有BUG. 这个 ...

  9. Xamarin.Forms介绍

    On May 28, 2014, Xamarin introduced Xamarin.Forms, which allows you to write user-interface code tha ...

随机推荐

  1. JavaSE---关键字---return,break,continue

    1.[break] 1.1 默认   用来结束   整个循环: package com.exiuge.mytest; public class BreakTest { public static vo ...

  2. git知识点总结

    集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器.集中式版本控制系统最大的 ...

  3. Naive Operations

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6315 学习博客:https://blog.csdn.net/SunMoonVocano/article ...

  4. inventor卸载不干净

    AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...

  5. maya2014安装失败如何卸载重装

    AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...

  6. CentOS 7 Linux 卸载/安装 Mariadb MySQL mysql 5.7

    [root@localhost mysql]# ls mysql-community-client--.el7.x86_64.rpm mysql-community-embedded-compat-- ...

  7. UGUI EventSystem.current.IsPointerOverGameObject(),判断是否进入了UI上

    EventSystem.current.IsPointerOverGameObject(); //返回一个布尔值,进入了UI上就返回true,用的时候要 using UnityEngine.Event ...

  8. phpmyadmin 开放远程登录的权限

    *linux下的修改* 在phpmyadmin.conf 加上如下试一下 <Directory "phpmyadmin路径">     AllowOverride No ...

  9. 工作空间造成的javaweb项目无法新建

    出现问题: 当我打开myeclipse开发工具将原有的已经存在的一个名为jeecms的项目删除的时候,出现了删除不了,因此我采取了强制的删除的方法,最终项目删除了.接下来新建同名的javaweb就出现 ...

  10. HDU 5335——Walk Out——————【贪心】

    Walk Out Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Su ...