想用虚拟机调试Android项目,于是想到了MS免费提供的 Visual Studio Emulator for Android,这玩意价格免费量又足,N久之前试用过,速度杠杠的!

安装包很小,不到40MB,很快就下载好了。由于以前玩过,知道这货依赖Hyper-V,于是先到系统功能中把Hyper-V装上,两次重启才完成。然后开始安装VSEMU,竟然安装不了,提示“The file or directory is corrupted and unreadable”,好像是安装包的问题。于是打开Chrome从MS官网又下载了一份,好在安装包不大,一会儿就下完了。再次安装,还是同样的错误!真崩溃!从回收站找出来上一个安装包,比对了一下两个文件,确认二进制相同,说明安装包没问题,应该是系统的问题!然后查安装日志,找到一处“MUX: ERROR: Could not load file or assembly 'Microsoft.VisualStudio.Utilities.Internal.Net35 ... '”,感觉是这个问题,又往这个方向挖了半天,依然没有解决!此处略去1000字,反正是各种折腾,最后感觉可能还真是下载的文件是坏的,于是把文件URL复制到迅雷里下载一份安装试试,果然好的!安装一切顺利!这个时候我的心里一万匹草泥马在狂奔!不知道到底是移动宽带的问题,还是Chrome浏览器的问题,同样的URL居然下载到的文件是坏的!浪费我宝贵的时间!

装好之后打开、启动虚拟机,启动正常,没问题!打开浏览器,发现不能上网,于是关掉虚机,到网络适配管理中找到虚拟网卡,把IP地址改为本地LAN的分配地址,然后再启动虚拟机,完蛋!启动不了了!然后又开始各种折腾,怎么都不能启动了,老外网站上说找到这个文件“C:\Program Files (x86)\Microsoft XDE\10.0.10586.0\SKUs\Android\xdesku.xml”,删除这一行:GuestDisplayProvider="VsEmulator.OpenGLGuestDisplay",试了根本没效果,还尝试了很多其它的方案,基本都没用!最后才发现是网络设置的问题,有个老外的贴子说是配置了多个内网或多个外网虚拟路由的原因,但我没有配置,应该就是我修改IP地址的原因,于是到Hyper-V管理器中删除所有虚拟网卡、路由和VSEMU的虚拟机,然后在VSEMU里再次启动虚机,它自动创建了相应的虚拟网卡,虚机也启动成功!后来发现只要添加一个External的虚拟网卡,然后Hyper-V的虚机设置里选择这个网卡,虚机就能正常上网了!

接下来开始折腾hosts的问题,由于本机调试的项目是通过hosts中配置的伪域名访问的,也要修改虚机的hosts,看网上的方法说可以通过如下方法修改:

adb remount
adb pull /system/etc/hosts
vi hosts # 修改好对应内容
adb push hosts /system/etc

有点小激动,结果第一步adb devices 就没有找到虚机,很郁闷。于是继续上网搜索相关解决方案,发现需要配置Android SDK Tools:

HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Android SDK Tools
Path="C:\\Program Files\\android-sdk" (目录中要有platform-tools,试了一下tools和platforms好像都不需要)

这样在启动vsemu之后就能 adb devices 列出设备了,也能 adb操作了。

附1:

Android SDK Tools 下载地址 https://developer.android.com/studio/index.html
最下面:仅获取命令行工具
点击下载 sdk-tools-windows-3859397.zip

Android SDK Platform-Tools 下载地址(也可以通过上面下载的 SDK Tools 下载 Platform-Tools)
https://developer.android.com/studio/releases/platform-tools.html
点击下载 SDK Platform-Tools for Windows

注:这两个都可以通过使用迅雷实现高速下载,官方地址直接下载太慢了!

附2:

Android SDK Manager 代理设置
(最新版本的SDK Manager 好像已经没有GUI界面了,只能命令行操作,只有又大又笨的 Android Studio 里带GUI管理工具)
Tools => Options... => Android SDK Manager - Settings
HTTP Proxy Server 设为 mirrors.neusoft.edu.cn
HTTP Proxy Port 设为 80
勾选“Force https://... sources to be fetched using http://...”,然后返回主界面,选择Packages => Reload 即可。

Visual Studio Emulator for Android 折腾记的更多相关文章

  1. Visual Studio Emulator for Android 初体验

    Visual Studio Emulator for Android已经推出一段时间了,但一直没有用过.前两天下载安装用了下,整体感觉比谷歌自带的模拟器强多了.Visual Studio Emulat ...

  2. [Android] Visual Studio Emulator For Android 相关

    1.修改设备名 C:\Users\[用户名]\AppData\Local\Microsoft\VisualStudioEmulator\Android\Containers\Local\Devices ...

  3. 2.[WP Developer体验Andriod开发]Andriod Studio结合Visual Studio Emulator for Android调试Android App

    0. 工欲善其事必先利其器 上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了. 说到开发就绕不开调试程序,调试Android App我们有2种选 ...

  4. Win10安卓模拟器Visual Studio Emulator for Android使用简介(转)

    Visual Studio Emulator for Android是微软官方发布的独立版本的安卓模拟器,这款软件可以让安卓应用开发者更加轻松的用Visual Studio编写Android应用,据说 ...

  5. Adb connect监听指定的主机和端口/Adb监听Visual Studio Emulator for Android模拟器

    语法: adb connect <host>[:<port>] 使用实例: adb connect //如果连接成功则返回 connected to 说明 在使用Visual ...

  6. 2.[Andriod]Andriod Studio结合Visual Studio Emulator for Android调试Android App

    0. 工欲善其事必先利其器 上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了. 说到开发就绕不开调试程序,调试Android App我们有2种选 ...

  7. Visual Studio Emulator for Android 的安装与使用 感觉最干净好看的模拟器.

    Step1 win8+ 6G+ 添加删除程序\ hyper  创建虚拟机 安装visual studio android 模拟器, 自带三个模拟器 使用管理员打开模拟器 参考文献 Visual Stu ...

  8. VS2015 使用 Visual Studio Emulator For Android 调试无法命中断点的解决办法?

    源解决方案是英文版的,地址:https://dzone.com/articles/fix-for-could-not-connect-to-the-debugger-while-de 问题现象: 1. ...

  9. Visual Studio Emulator for Android 里面的安卓模拟器如何启用

    打开软件

随机推荐

  1. ubuntu linux安装octave

    sudo apt-add-repository ppa:octave/stable sudo apt-get update sudo apt-get install octave 安装完成后,在终端中 ...

  2. httpclient使用head添加cookie

    最近在使用接口时候,我使用get请求时,需要携带登录态,所以在get请求的时候我需要在head里面把cookie给加上,添加方式get和post完全不一样 Post方式添加cookie httpPos ...

  3. nutzwk运行后wk-web中生成ehcache.disk.store.dir有什么用,怎么去掉

    nutzwk运行后wk-web中生成ehcache.disk.store.dir有什么用,怎么去掉  发布于 29天前  作者 qq_96c46988  64 次浏览  复制  上一个帖子  下一个帖 ...

  4. TCP与虚连接

    http://bbs.csdn.net/topics/390262738 在TCP通信时,会建立一个从源端到目的端的虚拟连接.感觉这种连接类似电路交换,只是这种连接是虚拟存在的.发送的报文都应该是沿着 ...

  5. vue中css动画原理

    显示原理: <transition name='fade'> <div v-if='show'>hello world</div> </transition& ...

  6. tensorflow pb ckpt pbtxt

    ckpt存储参数值 pbtxt存储网络图 pb既存储参数值又存储网络图

  7. leanote开源云笔记

    下载链接 http://yunpan.cn/cZ42hEEQcYMMz (提取码:16a1)

  8. ubuntu修改IP地址和网关的方法

    一.使用命令设置Ubuntu IP地址 1.修改配置文件blacklist.conf禁用IPV6 sudo vi /etc/modprobe.d/blacklist.conf 表示用vi编辑器(也可以 ...

  9. css3 媒体查询的学习。

    1.什么是媒体查询 媒体查询可以让我们根据设备显示器的特性(如视口宽度.屏幕比例.设备方向:横向或纵向)为其设定CSS样式,媒体查询由媒体类型和一个或多个检测媒体特性的条件表达式组成.媒体查询中可用于 ...

  10. (转)数据库老兵:NewSQL才是未来

    编者按:在数据库技术领域,Michael Stonebraker几乎是无人不知无人不晓的人物.现年70岁的Stonebraker不仅是Ingres和PostgreSQL的创始人,同时在Informix ...