android 模拟器测试之旅

近期,app 需要在模拟器上跑,主要验证在低内存(1g~2g)的环境中看下app会不会出现崩溃或者异常。

Android studio的模拟器

最开始就选择了google亲儿子验证。毕竟下载速度快,写测试demo的时候也运行过。一番操作下来,首先发现了第一个问题:

1. 模拟器占用空间大,C盘不够用了

百度下,配置了环境变量android_sdk_home,然后去C:\Users\xxx\.android\avd 目录把对应的模拟器删了很轻松就搞定了。
在这里插入图片描述创建新的avd,选择android版本,选择system image,创建好了之后。第二步就是安装apk了。因为apk里面有很多资源文件,包括外部配置,地图等。直接运行是没法安装的,因此都是把资源文件打包到apk里面再进行安装。打好包,打开cmd,跳转到adb 命令所在的目录(我的是D:\software\android\platform-tools下),把apk拷贝过来,运行命令adb install 命令。
在这里插入图片描述
到这里出现了第二个问题:

2. install_failed_no_matching_abis 错误

继续百度:
https://stackoverflow.com/questions/24572052/install-failed-no-matching-abis-when-install-apk
上面讲的比较清楚了程序用的native library跟你模拟器的cpu 架构不匹配。网上搜了下解决办法,在app的build.gradle中加上这样一句话即可:

 // 解决 native libraries 不支持cpu的体系结构。允许模拟器调试
 	android {
    	splits {
        	abi {
            	enable true
            	reset()
            	include 'x86', 'armeabi-v7a','x86_64'
            	universalApk true
        	}
    	}
    }

OK,按部就班操作。重新打release包,报错。但是release下就生成了对应的apk。查看了下app的build.gradle的配置,注释掉了相对的打包配置

在这里插入图片描述

重新打包,成功。在release下,每个架构都生成了一个apk.在这里插入图片描述
查找了下模拟器的架构,发现是x86的,
在这里插入图片描述
把app-x86-release.apk 放到了对应的目录下,重新运行 adb install 命令。安装成功!
在这里插入图片描述
原以为万事大吉,后面只需要找找修改模拟器内存的方式改下。然后运行下就ok了。可惜在运行的时候发现又报错了, 第三个问题:

so库与jar包不匹配

在这里插入图片描述
难道刚刚解决的不是这个问题吗?回想起之前弄so文件的时候也经常出现这个错误。看了下代码结构
在这里插入图片描述
难道说要找armeab-v7a架构的模拟器才行?简单查了下 还真在模拟器的选项上发现了。
在这里插入图片描述
好吧,那就重新建立个模拟器吧,反正也不费什么事儿,一通操作… , 下载成功,启动模拟器!第4个问题:

google arm架构的模拟器简直没法用

启动模拟器过程中弹出了个这个
在这里插入图片描述

没事,小问题,不管它,等了几分钟模拟器黑屏没动静,又等了十几分钟一直卡在android图标界面。半个多小时之后模拟器终于启动了,怀着激动的心情点击了几下模拟器,发现模拟器卡住不动了。重启之后一通操作的我终于意识到了上面那个10倍速度的慢是有多慢。
一边挂着google的模拟器,一遍寻求其它的解决办法。

转战genymotion

听大家说genymotion模拟器好用,而且安装可以不用adb命令,直接拖拽。那好吧,去官网瞅瞅
在这里插入图片描述
下一个带VitualBox的。安装,exe先装genymotion模拟器,再装virtualBox。 一切顺利,启动;哦,要账号,记得之前好像不需要账号的啊?算了 注册一个;啥,要收费?那免费试用30天的吧!register之后,发现邮箱里面并没有收到激活邮件,等了几分钟,发现了这个。
在这里插入图片描述
这也太不靠谱了吧?我要这儿折腾一个小时(实际也没要1h,大概十几分钟之后收到了邮件)?而且听说这个模拟器还需要去下载一个兼容包(Genymotion-ARM-Translation.zip)才能跑arm架构的apk。此路不通?换?

转战雷电模拟器

寻寻觅觅,找到个雷电模拟器(听说支持arm架构),网上一搜发现有很多夹带私货的推广。发下官网地址:
https://www.ldmnq.com/
进去下载试了下,发现出乎意料的好用。程序很快就安装跑起来了,没出幺蛾子,修改内存简单,在设置里面修改, 重启就好。至此模拟器的选择就搞定了。

吐槽一下不好的地方:

  1. 雷电模拟器根据自己的版本支持android版本,比如我用的雷电模拟器大版本是4.x,那么对应支持的android模拟器的版本是7.1,无法新建其它版本的模拟器。这也是跟google模拟器以及genymotion的区别,比较人家搞这个主要是玩手游,多开方便的。
  2. 另外不知道是我电脑分辨率的原因还是什么其它原因?我的电脑显示没有退出按钮
    在这里插入图片描述
    好了 ,自此完结。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值