2KB项目,专业的源码交易网站 帮助 收藏 每日签到

介绍 Visual Studio 的 Android 模拟器

  • 时间:2019-01-23 18:33 编辑:2KB 来源:2KB.COM 阅读:336
  • 扫一扫,手机访问
  • 分享
摘要:
Android Visual Studio 英文原文:Introducing Visual Studio’s Emulator for Android

Microsoft 本周发布了 Visual Studio 2015 预览版, 里面包含 Android 开发工具. 安装的时候, 如果选 Android 开发, Visual Studio 会把调试 Android 应用程序用的 Visual Studio 模拟器也装上.  你也可以点这里查看视频介绍.

clip_image001

为了帮助我们把模拟器做的更好,请填下这个简短的问卷调查

在介绍这个新模拟器之前, 我们先来聊一聊, 为什么需要一个新的 Android 模拟器 – 当然, 你也可以直接跳到自己感兴趣的部分去阅读 :-)

Android 模拟器存在的必要性

我们知道, 模拟器在 编程-编译-调试 开发周期中, 扮演着很重要的角色(甚至比物理设备还重要). 所以我们相信, 今天发布的这个模拟器, 在开发中是必不可少的.

有了优秀的模拟器, 不代表我们就不需要物理设备了. 反之亦然,  他们之间其实是互补的关系.

下列几种情况, 只能用物理设备测试, 模拟器派不上用场:

  1. 测试代码的性能. 虽然模拟器能帮你纠正代码中的错误, 但是它无法正确的给出, 代码在指定设备上的性能评估. 毕竟, 我们都希望测试的结果, 尽量接近用户实际使用的效果. 

  2. 测试某些硬件问题. 比如, 你想测试下游戏的触摸灵敏度, 外放的音效, 或者调试 OEM 设备的 Bug , 这些测试只能在物理设备上进行.

  3. 评估真实的用户体验. 譬如, 你设计出来的人机交互界面, 适不适合用户边走路, 边单拇指操作? 

除去上面列举的场景,大家应该都会很乐意使用模拟器。因为调试代码通常占用了80%的开发时间,而模拟器为我们大大提高了工作效率。(除非你的模拟器有其他阻塞性问题或者使用限制)。下面是使用模拟器的几个理由:

  1. 大部分的测试工作都是用来验证程序的正确性而非性能,并且大部分的代码都与底层硬件无关。所以是用模拟器是极好的。

  2. 购买一大堆硬件设备来测试是一件很奢侈的事情(特别是持续不断的购买新机)。大部分的硬件差异可以使用模拟器软件进行配置,比如说屏幕分辨率,不同屏幕的DPI,API级别/平台版本号等等。

  3. 使用物理动作来测试程序对传感器输入的反应也是很费劲的,比如说动作变化、地理位置变化或是网络/电池的变化。在这种场景下,选择模拟器来模拟传感器的输入就非常便捷高效,比如说模拟器可以模拟一段旅程中位置的变化,并测试应用程序对地理位置变化的响应。

  4. 使用模拟器还有一项而外的便利。管理多个物理连接的USB设备(一大堆连线和接口),是很麻烦的。此时使用模拟器就简单得多,模拟器就是一个运行在电脑上普通的应用层序,除去了物理连接的烦恼,非常便于管理。

所以说模拟器是软件的开发的好伴侣,我们希望把VS的模拟器打造成第一流的。我们从开发者那里收集到现有模拟器的痛点,在我们的版本上予以一一击破:

  • 速度慢。这是从Android开发者那排名第一的抱怨。“这个模拟器速度慢极了,严重影响了我的生产率,我还不如用真机测试。”速度慢是不可接受的。使用模拟器应该比使用真机的运行速度更快才是,这样才能提高测试效率。记住一点,我们并不是在测试代码的运行性能,对功能测试来说就是要让模拟器尽可能地跑得快。

  • 与Windows的Hyper-V冲突。很多模拟器在运行时要关闭Hyper-V,或是在使用Hyper-V时,性能反而更糟糕。但使能Hyper-V是大部分开发者的常见配置,频繁重启电脑来开关Hyper-V是不可接受的。

  • 对那些要使用Windows Phone模拟器(基于Hyper-V)的开发者来说就更为苦恼。总不能为因为要测试跨平台的代码,不断的重启和配置电脑设置吧。

  • 额外的购买和安装步骤。如果你已经在使用Visual Studio,那么恭喜你,你不许要再额外购买和安装一款其他的模拟器软件。

  • 更多的费用开销。购买一款卓越的模拟器,也意味着更高的开销,这也是拒绝使用模拟器的一个主要原因。Visual Studio的Android模拟器是附赠的,不需要额外的费用。

简单来说,我们在Visual Studio的Andriod模拟器解决了以上痛点。废话不多说,下面开始给大家介绍使用VS的Android模拟器的调试方法,我们将从如何选择Android模拟器开始讲起。

用 Visual Studio 模拟器调试 Android 程序 

无论你用的是哪一种编程模式: 用 JavaScript (或 TypeScript) 的 Cordova, C++, 或 是用 C# 的 Xamarin, 都可以在 Visual Studio 2015 预览版上 编写-编译-调试 Android 代码.

启动调试模式的时候, 要选择调试目标(Debug Target). 调试目标可以是一台物理设备, 或者是某个在你电脑上运行的模拟器. 我们来看看怎么给 Visual Studio 2015 预览版中的 Cordova 和 C++, 以及 Visual Studio 2013 的 Xamarin 选择一个调试目标.

C++ 项目的调试目标选择菜单如下图所示:

clip_image003

Cordova 项目要选择菜单的最后两项, 具体看下面的截图:

clip_image005 (切记, 不要选  “Android Emulator” 这一项.  因为它运行的速度太慢了)

Xamarin 项目的选项如下图所示:

clip_image006

最好把位于 项目属性-Android 选项 中的 "Use Fast Deployment" 勾选去掉.

注: 如果你想从别的 Android IDE 临时用下 VS 的模拟器应急.  首先, 按照上面介绍的方法启动模拟器; 然后,  把项目关掉, 保留模拟器继续运行就可以. 其他 IDE 可以通过 ADB 调用 VS 的模拟器.

选好调试目标后, 按 F5 , 你的应用就会发布到模拟器中. 就像平时调试 VS 的代码一样, 程序运行到断点处停下, 然后你可以查看堆栈, 变量等等. 现在, 大家都知道怎么用模拟器调试了吧? 那我们继续将其他功能。 

传感器模拟以及Visual Studio Android模拟器的其他能力

除了使用模拟器做为部署的目标板以外,你还可以使用模拟器的传感器模拟以及其他功能。 下面会给大家讲解其中的一部分,顺序不分先后。

clip_image008

缩放

你可以在开发机上(主机侧)调整模拟器的显示大小。模拟器的DPI值是由你的主机显示器决定的,与缩放的大小无关。所以如果你觉得模拟器占用了太多的桌面空间,那就缩小它。

使用模拟器右侧的工具栏中的“Zoom”按钮,就可以调整大小。

你也可以使用全屏模式,点击"Zoom"按钮上方的“Fit to Screen”按钮即可。

如果你想对模拟器中运行的程序进行截屏(比如说,使用windows自带的截屏工具),要想取得最好的效果,就要把模拟器的缩放比例调到最大(也就是100%)。如果想要更好的效果,就要使用模拟器自带的截屏工具了,这个工具我后面也会提到。

屏幕的朝向/旋转

除非你的应用界面是固定不变的, 否则, 就应该测试下, 手机处在不同方向时, 应用界面翻转后的各种效果, 如:  竖屏, 左横屏, 右横屏. 垂直工具栏上有两个按钮 "左旋转"(Roate Left) 和 "右旋转" (Rotate Right), 分别可将模拟器向左和向右旋转. 旋转后, 模拟器的尺寸不发生改变.

网络信息

由于模拟器使用的是宿主机器上的网络连接, 所以网络部分不需要配置.

你可以点击垂直工具栏上的 "工具"(Tools) 按钮, 然后在展开的"附加工具" (Additional Tools)面板中点击 "网络"(Network) 选项卡查看网络配置信息.

clip_image010

定位 (GPS)

如果你的应用跟导航, 地理围栏(geofencing), 行走/骑行/驾驶有关. 那么, "附加工具"(Additional Tools)面板中的 “定位”(Location) 选项卡里头的定位跟模拟驾驶(driving simulation) 功能就会变得很有用 .

clip_image012

地图可以拖动过, 放大缩小, 甚至可以查找某个具体位置.  通过放置或移除地图上的大头针 (pin) 创建地图上的点(map points). 左下角显示的是坐标. 上边的工具栏的保存按钮, 可以将地图上的点存储为 XML 文件. 有需要时候, 再重新加载进来.

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。 2KB翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。


2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务

  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【计算机/互联网|】Nginx出现502错误(2020-01-20 21:02)
【计算机/互联网|】网站运营全智能软手V0.1版发布(2020-01-20 12:16)
【计算机/互联网|】淘宝这是怎么了?(2020-01-19 19:15)
【行业动态|】谷歌关闭小米智能摄像头,因为窃听器显示了陌生人家中的照片(2020-01-15 09:42)
【行业动态|】据报道谷歌新闻终止了数字杂志,退还主动订阅(2020-01-15 09:39)
【行业动态|】康佳将OLED电视带到美国与LG和索尼竞争(2020-01-15 09:38)
【行业动态|】2020年最佳AV接收机(2020-01-15 09:35)
【行业动态|】2020年最佳流媒体设备:Roku,Apple TV,Firebar,Chromecast等(2020-01-15 09:31)
【行业动态|】CES 2020预览:更多的流媒体服务和订阅即将到来(2020-01-08 21:41)
【行业动态|】从埃隆·马斯克到杰夫·贝佐斯,这30位人物定义了2010年代(2020-01-01 15:14)
联系我们

Q Q: 7090832

电话:400-0011-990

邮箱:7090832@qq.com

时间:9:00-23:00

联系客服
商家入住 服务咨询 投拆建议 联系客服
0577-67068160
手机版

扫一扫进手机版
返回顶部