搞开发也很多年了,还是第一次写blog,给自己留一些记录吧
自从用了Genymotion这个号称快到极致的Android模拟器以后,很多时候调试程序都不想用真机了,SDK带效率低下的官方模拟器因为效率太低也放弃了(据说可以通过配置来改进一直没去尝试过)
通过模拟器和hierarchyviewer可以很方便查看很多程序的界面布局,用于学习非常不错,不过也一直有个问题,就是很多ARM的程序都没法安装(比如微信),毕竟是用的vbox虚拟机,相当于在x86环境下运行的,限定ARM的程序自然是无法安装了,会提示"INSTALL_FAILED_CPU_ABI_INCOMPATIBLE"这个错误,无法向模拟器部署,如果直接安装APK则会提示与您的设备不兼容。
那么是不是就没有办法了呢?通过查找资料,发现了解决的方法,相信很多人也早就知道了,参考xda的这篇文章:
http://forum.xda-developers.com/showthread.php?t=2528952
使用方法也很简单,就是将zip文件直接拖放到Genymotion的player窗口中即可自动安装(安装后要重启一次)。
不过在实际操作的过程中,发现在部分模拟器环境下,将zip文件拖进去以后会报错,提示"an error occurred while deploying a file"。经过实验,用DDMS也没法手动安装zip包里的东西(要复制到system下)。个人认为原因可能在于设备没有在root的状态下,但是Genymotion应该是已经root了的啊,最后解决方法是通过re管理器之类的文件管理工具,先获得root的读写权限,然后将文件手动复制过去替换就行了(记得要重启)。其实这方法也是xda的帖子里面提到的。应该还有更简单的方法,其实就是将zip包中的system/lib下的文件都复制到设备就行了。
这么操作以后,就可以安装各种ARM的程序了,微信也正常安装,经测试使用也没有什么问题。
没试过Genymotion的朋友推荐试试这个模拟器,很多时候,比真机要更快捷方便,性能也很棒
安兔兔测试,不能跑3D测试部分,不过分数还是不错的...