当前位置: 首页 > 科技观察

如何做一个懒惰又高效的Android开发者(2)

时间:2023-03-18 23:02:12 科技观察

上一篇我们讨论了依赖注入和RoboGuice库。今天我们要讨论一个很棒的测试和开发工具。本人从Android源码1.5一直做开发到现在,经历过Android和Android模拟器的开发过程。我觉得速度提高了一点,但是没有我们想象的那么流畅和好用。相信很多安卓开发者都厌倦了打开本地模拟器,然后进入加载界面,然后各种无响应,卡顿。虽然可以通过快照来加速。补充一点,因为我也是做Windows程序开发的,所以我发现Windowsphone模拟器速度很快,性能也很好。可惜没做过IOS开发,现在了解到IOS模拟器也很不错。所以如果与IOS和Windows模拟器相比,Android模拟器就慢如乌龟。Android系统很特殊,需要模拟App进行测试。我同意这个观点。但我认为每个问题都有解决方案,所以解决性能和这种差异的方法是使用虚拟化技术。所以今天我决定写一篇关于Genymotion模拟器的文章,我觉得非常非常好。这个项目从一开始我就一直在和你们分享,人们都很喜欢它。所以我认为它应该与本网站的读者分享。GenymotionEmulator-更快的Android模拟器问:您想在不使用真实设备或平板电脑的情况下运行App示例吗?Q:如果您是开发者,是否希望能够更方便的测试App?针对以上两个问题,这里有一个简单的解决办法:使用Genymotion模拟器。这是一个用于测试和演示的快速模拟器App,它有友好的用户界面,可以控制各种虚拟组件和传感器,如电池、GPS和各种加速器,它还包含一个强大的命令行工具,可以构建更复杂的测试环境。免费和开源软件实际上是基于一个开源项目AndroVM的beta版本,现在有一个商业版本,旨在为运行android提供一个尽可能高效的虚拟环境。所以它是免费和开源的,以前是完全免费的,现在也有一些付费服务,但是免费版还是不错的,有很多我们喜欢的功能,比如电池管理小部件,GPS小部件和相机小部件。使用要点和模拟器准备假设你之前玩过VirtualBox,如果你没有玩过,可以点击上一个链接。Genymotion模拟器需要在你的机器上运行VirtualBox,这就是为什么它比本地模拟器更快。如果之前打开过模拟器,再次打开时不用重新加载,会加载之前的状态。这与本机模拟器中的“快照”功能非常相似。旁注:早期版本的Genymotion提供了带有Google应用程序的模拟器,因此用户可以从GooglePlay商店下载应用程序和游戏。不过,11月13日发布的Genymotion2.0.0版本不再包含对谷歌应用程序和ARM类库的支持。至于谷歌应用,官方正在与谷歌沟通,希望在Genymotion上重新添加谷歌应用。详情请见:GenymotionChangelog。但是现在Genymotion的模拟器没有谷歌应用。我在StackoverFlow上找到了原因:HowToAddGoogleAppsandARMSupporttoGenymotionv2.0+。除了速度和性能之外,Genymotion还提供了许多有用的功能:-跨平台支持因为它运行在VirtualBox上,所以它可以运行在Windows、Mac和Linux上。无需安装任何东西,只需从Genymotion官网下载并注册账号即可下载不同的模拟器版本。.传感器控制它可以以用户友好的方式管理电池电量、GPS和加速度计等模拟传感器。例如,如果你正在开发一个基于GPS的应用程序,需要测试不同的地理位置,你只需要在地图上拖拽,就可以将地图移动到相应的位置。如果需要移动X和Y坐标,也可以这样做。支持GoogleAppStore服务要使用GooglePlayServiceSDK测试应用程序,需要进行以下配置:一台兼容Android2.3或更高版本并兼容GooglePlayStore的设备;具有可以运行android4.2.2或更高版本android模拟器的AVD;这里Genymotion为一些ROM提供了GooglePlay应用程序集成,就像真实设备一样。我清楚地记得,我花了几天时间来测试一个使用GoogleMapAPIV2的应用程序,我们使用Genymotion来测试它。Genymotion在开发环境中的完美集成,为新的虚拟设备提供了简单的UI操作,您可以单独使用它,也可以安装Eclipse或AndroidStudio/IntelliJ插件。相关链接:http://www.genymotion.com/用户手册:https://cloud.genymotion.com/page/doc/注意:拥有更快的模拟器并不意味着你可以更快地编写程序,只是你没有不必在真实设备上测试,可以帮助您更快地开发和测试应用程序;Genymotion上的Google+帖子说已经支持Android4.4预览版,但可能有bug;官方还在开发一些ROM,也在不断测试和修复bug。总结:Genymotion是一个更快的Android模拟器,可用于开发、测试甚至展示应用程序,它可以控制GPS、电池电量和加速度计等虚拟传感器。事实上,Genymotion刚刚发布了第一个商业版本2.0.0,还有很多问题需要修复。我建议将此模拟器与Eclipse或AndroidStudio/IntelliJIDE结合使用,以更快的方式开发和测试应用程序。