Microsoft 本周发布了 Visual Studio 2015 预览版, 里面包含 Android 开发工具. 安装的时候, 如果选 Android 开发, Visual Studio 会把调试 Android 应用程序用的 Visual Studio 模拟器也装上. 你也可以点这里查看视频介绍. 为了帮助我们把模拟器做的更好,请填下这个简短的问卷调查。 在介绍这个新模拟器之前, 我们先来聊一聊, 为什么需要一个新的 Android 模拟器 当然, 你也可以直接跳到自己感兴趣的部分去阅读 :-) Android 模拟器存在的必要性我们知道, 模拟器在 编程-编译-调试 开发周期中, 扮演着很重要的角色(甚至比物理设备还重要). 所以我们相信,今天发布的这个模拟器,在开发中是必不可少的。 有了优秀的模拟器, 不代表我们就不需要物理设备了. 反之亦然, 他们之间其实是互补的关系. 下列几种情况, 只能用物理设备测试, 模拟器派不上用场:
除去上面列举的场景,大家应该都会很乐意使用模拟器。因为调试代码通常占用了80%的开发时间,而模拟器为我们大大提高了工作效率。(除非你的模拟器有其他阻塞性问题或者使用限制)。下面是使用模拟器的几个理由:
所以说模拟器是软件的开发的好伴侣,我们希望把VS的模拟器打造成第一流的。我们从开发者那里收集到现有模拟器的痛点,在我们的版本上予以一一击破:
简单来说,我们在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 项目的调试目标选择菜单如下图所示: Cordova 项目要选择菜单的最后两项, 具体看下面的截图: (切记, 不要选 “Android Emulator” 这一项. 因为它运行的速度太慢了) Xamarin 项目的选项如下图所示: 最好把位于 项目属性-Android 选项 中的 "Use Fast Deployment" 勾选去掉. 注: 如果你想从别的 Android IDE 临时用下 VS 的模拟器应急. 首先, 按照上面介绍的方法启动模拟器; 然后, 把项目关掉, 保留模拟器继续运行就可以. 其他 IDE 可以通过 ADB 调用 VS 的模拟器. 选好调试目标后, 按 F5 , 你的应用就会发布到模拟器中. 就像平时调试 VS 的代码一样, 程序运行到断点处停下, 然后你可以查看堆栈, 变量等等. 现在, 大家都知道怎么用模拟器调试了吧? 那我们继续将其他功能。 传感器模拟以及Visual Studio Android模拟器的其他能力除了使用模拟器做为部署的目标板以外,你还可以使用模拟器的传感器模拟以及其他功能。 下面会给大家讲解其中的一部分,顺序不分先后。 缩放你可以在开发机上(主机侧)调整模拟器的显示大小。模拟器的DPI值是由你的主机显示器决定的,与缩放的大小无关。所以如果你觉得模拟器占用了太多的桌面空间,那就缩小它。 使用模拟器右侧的工具栏中的“Zoom”按钮,就可以调整大小。 你也可以使用全屏模式,点击"Zoom"按钮上方的“Fit to Screen”按钮即可。 如果你想对模拟器中运行的程序进行截屏(比如说,使用windows自带的截屏工具),要想取得最好的效果,就要把模拟器的缩放比例调到最大(也就是100%)。如果想要更好的效果,就要使用模拟器自带的截屏工具了,这个工具我后面也会提到。 屏幕的朝向/旋转除非你的应用界面是固定不变的, 否则, 就应该测试下, 手机处在不同方向时, 应用界面翻转后的各种效果, 如: 竖屏, 左横屏, 右横屏.垂直工具栏上有两个按钮 "左旋转"(Roate Left) 和 "右旋转" (Rotate Right), 分别可将模拟器向左和向右旋转. 旋转后,模拟器的尺寸不发生改变. 网络信息由于模拟器使用的是宿主机器上的网络连接, 所以网络部分不需要配置. 你可以点击垂直工具栏上的 "工具"(Tools) 按钮, 然后在展开的"附加工具" (Additional Tools)面板中点击 "网络"(Network) 选项卡查看网络配置信息. 定位 (GPS)如果你的应用跟导航, 地理围栏(geofencing), 行走/骑行/驾驶有关. 那么, "附加工具"(Additional Tools)面板中的“定位”(Location) 选项卡里头的定位跟模拟驾驶(driving simulation) 功能就会变得很有用 . 地图可以拖动过, 放大缩小, 甚至可以查找某个具体位置. 通过放置或移除地图上的大头针 (pin) 创建地图上的点(map points).左下角显示的是坐标. 上边的工具栏的保存按钮, 可以将地图上的点存储为 XML 文件. 有需要时候, 再重新加载进来. 除了 “Live”模式 , 这种由地图上的点, 直接改变模拟器 GPS 位置外. 还有其他模式可以选择! 比如你想在地图上设置几个点,并在这些点之间模拟移动的效果 . 那就选 “Pin” 模式. 然后点工具栏最右边的 Play 按钮,就能模拟出从一点到另外一点的移动效果.。甚至,还可以设置移动的速度(以秒为单位)。 最后,还有一个跟 “Pin” 模式差不多的 “Route” 模式。此模式也是模拟一点到另外一点的移动效果。不过多了点"曲折"。模拟器会自动计算出两点之间的实际路径,并以 1 秒钟为时间间隔,为这条路径创建隐形的点。而在这些点之间的移动速度,则取决于另外一个设置。该设置的选项有:“步行(Walking)” (5 公里/小时), “骑行(Biking)” (25 公里/小时), “限速(Speed Limit)” (在地图上, 不同位置, 速度也不一样),和“快速(Fast)”。 加速传感器如果你想测试应用对手机移动的响应效果, 那就打开 “附加工具(Additional Tools)” 面板中的 “加速传感器(Accelerometer)” 。 在 3D 面板中, 直接按住里面那个红点, 朝你想模拟的方向拖动. 如果你的应用已经写了处理移动事件的代码. 那它就能接收到手机移动的事件. 左下角的 X, Y, Z 值, 可以通过点击 “Reset” 按钮重置. 也可以由: 直立竖屏(Portrait Standing), 直立横屏(Landscape Standing), 平躺竖屏(Portrait Flat), 和 平躺横屏(Landscape Flat), 这几项来设置手机的初始朝向(Orientation)。 最后, 你可以点击右下角的 “Play” 按钮模拟震动效果. 我们能看的到的震动效果, 实际上就是 X,Y,Z 这几个值发生改变而已. 如果这几个值不再急剧变化, 说明震动已经停止。 电源/电池模拟 (以及开关机按钮)假如,你的应用需要对电池的电量变化做出响应。 那么你就会喜欢上 “附加工具(Additional Tools)” 面板中的 “电池(Battery)” 选项卡里面提供的功能. 里面有一个滑动条, 用来设置电池的剩余电量. 当你调整电量的时候, 右上角的电池图标也会跟着改变. 你的应用也会做出相应的反应. 如果你把 “电池充电(Charging)” 勾选去掉, 过一段时间后, 模拟器的屏幕就会变黑(blank). 这个时间可以在系统设置(Settings)-显示(Display)-休眠(Sleep) 里面设置. 点垂直菜单栏的 电源开关按钮(Power), 可以将模拟器从休眠中唤醒. 截屏要实现对应用截屏,打开"其他工具",切换到"截屏"标签。然后点击“捕捉"按钮,这样就可以实现截屏,并让你预览一下即刻所截屏。如果你打算保存这个截屏,点击"保存..."按钮。如果不喜欢你刚才的截屏,忽略或者再次点击"捕捉"按钮。 截屏工具总是实现(按照左下角所显示的清晰度的)100%进行截屏的,不会理会缩放设置如何。同时总是正面截图,不管你选择何种图像旋转方式。 通过拖拽安装 APKsAPK 是 Android 的安装文件。要在 Visual Studio 模拟器上安装 APK 文件,直接把 APK 文件拖到模拟器里面就可以。安装的时候,模拟器会提示 “正在复制文件…”。安装完毕,会有一个消息框提示 “ xxx 文件已经成功安装到 Android 系统中”。要确保你的 APK 文件是用 x86 模式生成的!当然, 你也可以把其他类型的文件(非 APK 文件)拖到模拟器中,这些文件会保存到 SD 卡上。这也是我们接下来要讲的内容。 SD 卡如果你的有向目标设备的SD卡读写的需求,模拟器可以利用一个硬盘上的文件夹模拟这个SD卡. 要注意Android镜像会使用一个独立的VHD文件来支持对SD卡的模拟. 所以如果你想要在你的开发机器上和SD卡传输文件,你可以把这个VHD安装到你的Windows上:关闭模拟器(以停止VM的运行),然后再Windows Explorer上找到VHD的位置,双击它就能安装. VHD默认会位于下面的这儿路径下面:
这样VHD就被作为另外的一个驱动器安装到了你的Windows上,你可以像使用其它的驱动器一样来使用它. 在重启模拟器之前,你必须卸载VHD,你可以通过在驱动器上右键选择“弹出Eject”来实现这个步骤. 可以再镜像中实现对SD卡的支持让其它的内置Android应用和功能可以使用,比如浏览器下载和照相机应用它为我带来了下一项能力. 照相机通常你可能会要使用应用里面的照相机(使用一个合适的API),而我们支持这个功能. 你也可以直接使用内置的照相机应用. 当你在模拟器里面启动照相机时,你将会看到一个固定的图像,你可以获取这个图像的快照,以模拟拍照. 音频播放,键盘文字输入…当然模拟器理所当然还会提供其它的一些功能,尽管他们需要来自产品团队的“努力” :-)。在这里我不会把所有的功能都列出来,单其中有两个值得注意:
配置在预览版中,提供了2组默认配置:
你可以在预览版中修改内存的分配,Hyper-V Manager的配置窗口中提供了配置“Startup RAM”的选项。注意,你也可以修改每个配置中使用的CPU核心数(默认值是2)。不过,我们还没有对所有的可能配置进行测试。 我们的工作才刚刚开始,在后面的版本中我们会提供更多的功能,同时也希望大家在下面的这个调查问卷中反馈意见,以便于我们对需求进行排序。 看看内部实现原理如果你对Visual Studio Android模拟器的实现原理感兴趣,我可以简单地回答这个问题,就是我们重用了其他产品的工作成果。在概念上,一个模拟器软件可以分为以下4个部分:
现在,再来看看目前这个应用的使用限制,我再次希望大家给我们反馈改进意见,我们会优先解决大家反馈的问题。 当前的使用限制今天给大家分享的是早期的预览版,这个版本中还有不少问题和Bug,我希望大家能把更多的问题反馈为我们。同时这个版本还有不少已知的使用限制--大家赶紧把你们最想要的功能反馈给我们,我们会优先处理:
如说上面所提的限制是你所急需的,目前的解决办法是使用真机来测试(或者另找一款更好的模拟器)。我们会在后面的版本中把上面的限制列表变短,所以请填写调查问卷来帮助我们进行优先级排序。 原文地址:http://blogs.msdn.com/b/visualstudioalm/archive/2014/11/12/introducing-visual-studio-s-emulator-for-android.aspx 本文转载自:微信公众账号 - WEB开发者,版权归原作者所有! |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|