20170323新增:VS环境配置

打开VS,菜单栏选工具(Tools) 选项\

一般有2个地方需要修改

1

2


新建第一个项目,什么都没有修改的情况下(已经配置好环境变量)直接运行,会发现如下错误:

这是因为没有连上手机或没有开启虚拟设备,打开AVD创建设备并打开后回VS运行按钮会变成下图:

再点击运行即可将app部署到虚拟设备,但是我并不建议使用Google 的AVD Manager创建的设备,因为实在是卡成狗。我们可以尝试使用Xamarin Android Player 或VS2015自带的模拟器,我这里用的是VS自带的模拟器。

XAP下载地址:https://developer.xamarin.com/releases/android/android-player/(下载安装后安装相应的模拟器需要FQ。)

VS Android模拟器下载地址:https://www.visualstudio.com/zh-hans/vs/msft-android-emulator/

模拟器介绍:https://my.oschina.net/u/2317468/blog/509516?p=1

为什么模拟器XAP 或 VS_Enulator 比AVD要快?这是需要硬件支持的《Windows Phone 8 模拟器的系统要求》,否则vs_emulatorsetup.exe会安装失败(有提示错误原因)

在 BIOS 中,必须支持以下功能:

  • 硬件辅助虚拟化。【我使用的是Intel CPU,可以使用securable查看是否支持】

  • 二级地址转换 (SLAT)。【可以使用微软官方的工具Coreinfo 进行检测[command-> coreinfo.exe –v]】

  • 基于硬件的数据执行保护 (DEP)。【参考:你的计算机开启了数据执行保护(DEP)吗?  我个人觉得应该是防止虚拟机内的病毒通过某些手段攻击主机?】

虚拟化  (详细请查看:虚拟化技术简介)

我们通常所说的虚拟化主要是指平台虚拟化技术,通过使用控制程序(Control Program,也被称为 Virtual Machine Monitor 或Hypervisor),隐藏特定计算平台的实际物理特性,为用户提供抽象的、统一的、模拟的计算环境(称为虚拟机)。

何为 SLAT 呢?(详细请查看:什么是SLAT,检查 CPU 是否支持二级地址转换 (SLAT))

在程序访问内存时都要经过从逻辑地址到物理地址的映射,虚拟环境下也不例外反而更加复杂,因为第一次映射出来的“物理地址”还是虚拟机下的虚拟地址,需要通过虚拟机把它再次映射成实际的物理地址,这样就限制了访问的速度。

而 SLAT 即“二级地址转换”,可以加速页表访问的速度!在 Intel 和 AMD 处理器上都提供了这一新技术,两个品牌针对 SLAT 这一技术有不同的技术名称:

Intel 的 SLAT 称为 EPT(Extended Page Table),Intel 的 Core i7,i5,i3,Pentium G6950 以及大部分的 Xeons 处理器都支持 SLAT,而 Core 2 系列以及更早的处理器则不支持!

AMD 的 SLAT 称为 RVI(Rapid Virtualzation Indexing),第三代皓龙处理器(代号:巴塞罗那)都支持这一技术。

BIOS 开启 虚拟技术(仅以我自己的主板为例)

开启Hyper

开启Hyper 后开始运行调试app又发现了需要开启Hyper 服务

在控制面板设置那里忘记勾选 Hyper-V服务了,除此之外可以勾选Hyper-V虚拟机监控程序。确定后需要重启计算机。

重启后打开VS,继续运行调试app发现又弹窗了:You have been added to the Hyper-V Administrators security group. Please sign out of your computer for the permissions to take effect.

英语好的可以看这:android enuemulator problem

这里有解决方案很简单,使用管理员身份打开VS

或者有一劳永逸的操作方式:右击vs,选属性,在弹窗后选快捷方式,选高级,勾选用管理员身份运行即可。

好了,做完上述步骤后继续打开VS,开启运行调试。模拟器总算可以运行了,但是却发现模拟器并没有成功安装app,前文已经说过解决方式,这里再说一次吧~

在注册表中"HKCU\Software\Microsoft\VisualStudioEmulator\Android"下添加一个名称为"AdbPath"的键,值就是Android SDK的platform-tools绝对路径(D:\Android\android-sdk\platform-tools)。

最后提示,刚进模拟器系统时打开 app,app有可能闪退,等一会app真正安装好后再打开就好了。

自此,第一个app终于可以运行!

第一个VS2015 Xaramin Android项目的更多相关文章

  1. 第一个VS2015 Xaramin Android项目(终)

    其实还有一个问题没解决,也拖很久了.中途公司的项目太紧导致无法学习更新. 之前的问题是这样的:项目搭建成功了,App也成功发布到虚拟机.便尝试增加控件 Xaml 设计界面如下: 但是在虚拟机运行却这样 ...

  2. 第一个VS2015 Xaramin Android项目(续)

    上文说到已经第一个 App已经可以运行,但是并不能调试! 经过细心发现,我察觉到VS刚开始进入了调试模式,但是一闪而过.也就是说调试失败了,此时需要等待一段时间才能打开此App,如果立即打开App 会 ...

  3. 创建一个ArcGIS for Android 新项目并显示出本地的地图

    1.准备工作:首先要配置好android的开发环境,然后在Eclipse中安装ArcGIS for Android的开发控件:在ArcCatalog中发布好本地的地图服务. 2.安装完ArcGIS f ...

  4. 创建一个Android项目

    当我们的eclipse安装了SDK后,点击Window-->Perference-->DDMS.eclipse界面立即转为DDMS界面. 这时,我们可以打开我们的服务端(安卓模拟器或者是我 ...

  5. 【Android Developers Training】 1. 创建一个Android项目工程

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  6. [Android开发教程]Android官网developer training中文版教程 - 1.1.1 创建一个Android项目

    本系列持续更新中.转载请注明来源. 前言:近期打算系统学习一下Android开发,发现Android官网上的developer training也是个非常好的学习资料,于是想到一边学习一边写一个中文版 ...

  7. 在Windows上将ReactNative集成到现有的Android项目

    React Natvie的官方文档的 Integrating with Existing Apps 已经很详细地教我们如何将React Natvie集成到现在的Android项目.我根据官方文档的步骤 ...

  8. Android项目结构 以及体系结构

    学习Android平台的人一般对Android的平台的应该有点认识 其它的就不多讲了 Android项目一般由以下几个部分构成 以上是一个简单的Android项目结构目录图 1. src  主要是 源 ...

  9. 小KING教你做android项目(一)

    写在项目开始之前: 最近关于android的视频教程,入门的书籍也已经有很多了,例如我的入门就是看了mars的视频教程.但是这么一圈学习下来,觉得真正快速提高的,不是在看视频,而是在实际工作中动手做项 ...

随机推荐

  1. 【RestTemplete】使用RestTemplete传Json或者 {} 报错--解决

    https://jira.spring.io/browse/SPR-9220?focusedCommentId=76760&page=com.atlassian.jira.plugin.sys ...

  2. [转]Oracle left join \ right join

    select 1 from a,b where a.id=b.id(+) 等同于 a left join b on a.id=b.id select 1 from a,b where a.id(+)= ...

  3. Deployment Descriptor Web.xml

    Deployment Descriptor部署描述符: - 部署描述符是要部署到Web容器或EJB容器的Web应用程序或EJB应用程序的配置文件. - 部署描述符应包含EJB应用程序中所有企业bean ...

  4. 学习 MeteoInfo二次开发教程(二)

    1.注意TSB_Select_Click等几个名称要改为toolStripButton2_Click等. 2.以下代码的位置与public Form1()函数并行. ToolStripButton _ ...

  5. list按照某个元素进行排序

    import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.u ...

  6. C程序设计第一次实验报告

    C程序设计实验报告 实验项目: 1.字符与ASCII码 2.运算符与表达式的运用 3.顺序结构应用程序 4.数学函数的算法描述 5.鸡兔同笼的算法描述 6.确定坐标的运算描述 姓名:王煜 实验地点:教 ...

  7. SpringBoot 出现Whitelabel Error Page 解决办法

    这是咋了,咋的就404了 我路径也挺对的啊 注解也都写上了啊 咋就找不到了呢? debug吧它不进方法 看日志吧,他还不报错 这家伙给我急的 百度一下午也没解决,最后还是看官网才知道错在了那里,程序只 ...

  8. getColor问题

    getResource.getColor(R.color.color_name) 过时了,可以使用新加入的方法 ContextCompat.getColor(context, R.color.colo ...

  9. leetcode56

    public class Solution { public IList<Interval> Merge(IList<Interval> intervals) { var le ...

  10. json介绍和使用

    最近在开发时需要用到json,所以在各种寻找json相关的博客,恰巧在博客园里就有一篇写的很不错的,在这里推荐下:http://www.cnblogs.com/Truly/archive/2006/1 ...