2.[Andriod]Andriod Studio结合Visual Studio Emulator for Android调试Android App
0. 工欲善其事必先利其器
上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了。
说到开发就绕不开调试程序,调试Android App我们有2种选择,真机调试和模拟器调试:真机调试相对简单,就不做介绍了,还有一方面原因是由于安卓手机一旦插到电脑上,开始ADB调试后,各种的流氓软件净是往手机上装垃圾应用,妈蛋的;随后就试了几次Android Studio的模拟器之后,无限感慨,真尼玛的卡,卡,卡,,,是可忍孰不可忍.....
前些日子留意到微软发布了一款Android模拟器,随尝试一下,如是就有了这篇博文。
0. Visual Studio Emulator for Android
不得不佩服微软,模拟器做的竟然比Google自家做的要好,流畅多了,但是需要hyper-v的支持,怎么开启hyper-v这里就不做介绍了,度娘会给你一堆教程的。
Visual Studio Emulator for Android官方介绍页面。
配置Android Studio的官方博客(本博客大部分参考资料来源于此)。
Visual Studio Emulator for Android下载地址。
下载完后是一个40M左右的vs_emulatorsetup.exe文件,不包含安卓模拟器的镜像文件,安装的时候会默认在线下载API 19(Andorid 4.4)的x86镜像,后续你也可以单独再下载其他的API xx版本,另外说明一下,Visual Studio Emulator for Android是不依赖Visual Studio的,也就是说可以单独安装使用,Android Studio是使用adb作为桥梁来连接Visual Studio Emulator for Android。
安装步骤我就不列出来了,记得安装后重启(它需要把自己加入Hyper-V Administrators的管理员组里面)。
安装重启后打开Visual Studio Emulator for Android,如下所示:

如果你启动了模拟器,则会在Hyper-V里面自动创建出对应的x86的Android虚拟机来,笔者的如下:

2. 设置Andorid Studio使其可以使用这些模拟器
打开Android Studio>Run>Edit Configurations>Defaults / Android Application / General 选项卡的Target Device节点,勾选Show chooser dialog和Use same device for future launches 。记得不要忘记点Apply和OK。如下图:

3. 为Android Studio添加启动模拟器的快捷按钮
虽然在Visual Studio Emulator for Android的管理器窗口中可以启动模拟器,但是每次都要到这里面去打开还是比较繁琐的,故而我们为Android Studio添加一个启动Visual Studio Emulator for Android的快捷按钮。
3.1 配置External Tool(VS Emulator (4.4 API 19))
打开File > Settings > External Tools>Add:

- Name:随便写,方便你认出来就好,笔者的是VS Emulator (4.4 API 19)。
- Program:填写Visual Studio Emulator for Android安装目录下的emulatoecmd.exe的绝对路径,就是用它来启动模拟器的。笔者的是C:\Program Files (x86)\Microsoft Emulator Manager\1.0\emulatorcmd.exe。
- Parameters:添加启动模拟器的参数,/sku:Android是说明打开Android的模拟器,/id:后面的Guid是模拟器的唯一编号,总的意思是指定要启动哪一个Android模拟器。id可以通过emulatorcmd.exe /sku:Android list /type:device获得,如下:

- Working Directory:指定工作目录,应该是可以随便填写的。笔者的是$ProjectFileDir$。
3.2 添加按钮(VS Emulator (4.4 API 19))到Toolbar
在toolbar空白处点击右键,选择Customize Menus and Toolbars。然后导航到Main Toolbar > Add After >在弹出的面板中找到External tool > VS Emulator (4.4 API 19) 然后按OK。如下:

然后点击我们新添加的按钮了,就可以启动Android模拟器了:

4. 为Android Studio添加Connect模拟器的快捷按钮
第三节的按钮只是启动了模拟器,但是Andorid Studio还无法连接到模拟器,这里就要使用adb命令来连接到刚才启动的模拟器上。
4.1 配置External Tools(adb Connect (VS Emulator))
同样是添加一个快捷按钮,步骤和第三部一样,只是参数不同,这里我就只把参数列出来了:
- Name:随便写,方便你认出来就好,笔者的是adb Connect (VS Emulator) 。
- Program:填写adb.exe的绝对路径,笔者的是D:\_android\sdk\platform-tools\adb.exe。
- Parameters:添加adb.exe的参数,connect ip:5555;笔者的是192.168.2.233:5555。ip可以通过打开模拟器在wifi中查看,也可以在模拟器的设置中network中查看

- Working Directory:指定工作目录,应该是可以随便填写的。笔者的是$ProjectFileDir$。
4.2 添加按钮(adb Connect (VS Emulator))到Toolbar
步骤和3.2一样的,这里就不再解释了。贴个图吧:

5. 用Visual Studio Emulator for Android调试Android App
按下Run按钮(绿色箭头那个...),弹出选择Android设备的选择框:

OK啦,大功告成:

6. 进一步完善
每次调试前都要点一下启动模拟器的按钮,等模拟器启动然后再点击contect模拟器的按钮,然后才能点run调试,,,好繁琐。
我们来配置一下run之前要执行的命令,让run按钮把这三件事都做了!
打开Run > Edit Configurations > Defaults / Android Application / Emulator 选项卡的BeforeLaunch节点,把我们刚才创建的两个External Tool添加到此处,记得不要忘记点Apply和OK,顺序如下:

这样我们以后调试就不用点3个按钮了,一个run全搞定,,,
but,,,我发现这个加进去后重启Andorid Studio后就消失了,,,有木有知道怎么解决的小伙伴,给支支招。
2.[Andriod]Andriod Studio结合Visual Studio Emulator for Android调试Android App的更多相关文章
- 2.[WP Developer体验Andriod开发]Andriod Studio结合Visual Studio Emulator for Android调试Android App
0. 工欲善其事必先利其器 上一篇博客对比了一下Android和WinPhnoe的布局容器,后续篇章重点放在Android的开发上了. 说到开发就绕不开调试程序,调试Android App我们有2种选 ...
- Co-Debugging JNI with Android Studio and Visual Studio
Tutorials > Android > Integration with other tools > Co-Debugging JNI with Android Studio a ...
- [Visual Studio]透过Visual Studio 2012的选择性贴上将XML与JSON直接转成对应的类别
原文:[Visual Studio]透过Visual Studio 2012的选择性贴上将XML与JSON直接转成对应的类别 在开发专案时若碰到要串接服务或是他人的API,常常避免不了都要面对XML或 ...
- 推荐SQL Server Management Studio以及Visual Studio下的免费的插件 ApexSQL Complete
SQL Server 并没有代码格式化的工具,对于处理他人编写的长SQL需要手工的格式化是一件麻烦的事情. 推荐SQL Server Management Studio以及Visual Studio下 ...
- visual studio 和visual studio code 的区别是什么?
区别有三: 区别一:含义不一样. Visual Studio(简称VS)是美国微软公司的开发工具包系列产品,是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具.代码 ...
- HoloLens开发手记 - 使用Visual Studio Using Visual Studio
不论你是否使用DirectX或Unity来开发全息应用,你都会使用Visual Studio 2015来进行调试和部署应用.在本部分,你将会学习以下内容: 如何通过Visual Studio将你的应用 ...
- [Visual Studio] 开启Visual Studio 2012通过右键菜单创建单元测试(Unit Test)
Visual Studio 2012可以说是迄今为止微软VS开发工具中用户体验最好的产品,无论是速度还是体验以及功能,都非常出色,但是,使用了一段时间后发现有一个之前版本VS都有的功能却在Visual ...
- 【Visual Studio】Visual Studio对CLR异常的特殊支持
Visual Studio 对异常进行了特殊的支持,它能够在进行了特殊设置后,使代码中的try catch块失效.也就是说,一个异常在正常情况下应该能够被某个特殊的try catch块捕获,但是Vis ...
- 【Visual Studio】Visual Studio 2010 "LNK1123: 转换到 COFF 期间失败: 文件无效或损坏" 的解决方法
1.将 项目|项目属性|配置属性|连接器|清单文件|嵌入清单 “是”改为“否”. 2.找到 C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5 ...
随机推荐
- linux进程管理和系统状态常用命令简介
1 进程管理简介 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础 2 常用命令 2.1 pstree 2.1.1 功能描 ...
- LeetCode专题-Python实现之第13题:Roman to Integer
导航页-LeetCode专题-Python实现 相关代码已经上传到github:https://github.com/exploitht/leetcode-python 文中代码为了不动官网提供的初始 ...
- mybatis和hibernate的区别
1. hibernate是全自动,而mybatis是半自动 hibernate完全可以通过对象关系模型实现对数据库的操作,拥有完整的JavaBean对象与数据库的映射结构来自动生成sql.而mybat ...
- 权限管理系统之LayUI实现页面增删改查和弹出层交互
由于对LayUI框架不太熟悉,昨天抽空看了下LayUI的文档,今天在网上找了使用LayUI进行增删改查相关内容,自己照葫芦画了个瓢,画瓢部分不是很难,主要是下午遇到了一个弹出层的问题耗时比较久. 同一 ...
- SpringBoot集成rabbitmq(一)
前言 Rabbitmq是一个开源的消息代理软件,是AMQP协议的实现.核心作用就是创建消息队列,异步发送和接收消息.通常用来在高并发中处理削峰填谷.延迟处理.解耦系统之间的强耦合.处理秒杀订单. 入 ...
- javascript基础修炼(2)——What's this(上)
目录 一.this是什么 二.近距离看this 三. this的一般指向规则 四. 基本规则示例 五. 后记 开发者的javascript造诣取决于对[动态]和[异步]这两个词的理解水平. 一.thi ...
- 第5章 支持和咨询选项 - Identity Server 4 中文文档(v1.0.0)
我们为IdentityServer提供了多种免费和商业支持和咨询选项. 5.1 免费支持 免费支持是基于社区的,并使用公共论坛 5.1.1 StackOverflow StackOverflow 社区 ...
- 【苹果通知APNs】不知道大家用过PushSharp没?
好久没写东西了,近期在研究Jenkins,大家有兴趣可以一起来玩玩交流,学习DevOps还是蛮重要. 近期我负责的项目里需要APNs的通知,这个自己单独开发还是蛮费功夫,故用了第三方开源的PushSh ...
- ADO.NET基础学习 二(Command对象)
②command对象用来操作数据库.(三个重要的方法:ExecuteNonQuery(),ExecuteReader(),ExecuteScalar()) ⑴以update(改数据)为例,用到Exec ...
- [HTTP] tcp/ip详解 链路层 网络层 传输层 应用层
1.可以把七层协议简化成四层协议链路层 网络层 传输层 应用层 2.通过路由器连接的两个网络网络层ip提供的是一个逐跳协议,提供了一种不可靠的服务,中间有可能会丢传输层tcp在ip的基础上提供了可靠的 ...