近期,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 truereset()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. 另外不知道是我电脑分辨率的原因还是什么其它原因?我的电脑显示没有退出按钮

    好了 ,自此完结。

android 模拟器测试之旅相关推荐

  1. Android零基础入门第7节:搞定Android模拟器,开启甜蜜之旅

    原文:Android零基础入门第7节:搞定Android模拟器,开启甜蜜之旅 在前几期中总结分享了Android的前世今生.Android 系统架构和应用组件那些事.带你一起来聊一聊Android开发 ...

  2. Android开发之旅:环境搭建及HelloWorld

    2019独角兽企业重金招聘Python工程师标准>>> 引言 本系列适合0基础的人员,因为我就是从0开始的,此系列记录我步入Android开发的一些经验分享,望与君共勉!作为Andr ...

  3. Android自动化测试之MonkeyRunner录制和回放脚本

    Android自动化测试之MonkeyRunner录制和回放脚本(十一) 分类: 自动化测试 Android自动化 2013-02-22 10:57 7346人阅读 评论(2) 收藏 举报 andro ...

  4. 我的Android进阶之旅------Android利用Sensor(传感器)实现水平仪功能的小例

    这里介绍的水平仪,指的是比较传统的气泡水平仪,在一个透明圆盘内充满液体,液体中留有一个气泡,当一端翘起时,该气泡就会浮向翘起的一端.    利用方向传感器返回的第一个参数,实现了一个指南针小应用.   ...

  5. 升级ADT22.6后,Android模拟器无法创建

    这 两天,在社区里看到有小伙伴们反应,自己在Eclipse下无法创建Android模拟器的问题.起初,自己也没太在意,我一直使用的是 Genymotion模拟器.然后,问题不解决,总有那么一天会让自己 ...

  6. 五步快速安装android模拟器

    有时候我们不得不面临一些离开自己电脑,那么怎样才能在别人的电脑上快速安装android的模拟器呢,下面记载着自己快速安装android模拟器的步骤 一..首先准备的内容有 .jdk1.6        ...

  7. Android自动化测试之MonkeyRunner MonkeyDevice MonkeyImage API使用详解 脚本编写 脚本录制回放

    MonkeyRunner 系列文章 MonkeyRunner简介 MonkeyRunner 三大模块 MonkeyRunner API MonkeyDevice API MonkeyImage API ...

  8. Android单元测试之Local unit tests(上)

    Android单元测试之Local unit tests(上) 简介 本地单元测试 JUnit 4 添加依赖 测试例子 结论 Mockito 添加依赖 测试例子-mock基本使用 测试例子-mock与 ...

  9. Android专项测试之崩溃测试(CPU)

    Android专项测试之崩溃测试(CPU) 崩溃问题类型 ❖ ANR:❖ 主线程5s内没响应 ❖ Java Crash: ❖ 未捕获的android vm异常 ❖ Native Crash: ❖ 未处 ...

  10. 【我的Android进阶之旅】推荐一款视频转换GIF图片格式的转换工具(Video to GIF)

    一.背景 最近想把一些Android Demo的运行效果图获取下来,但是一直使用真机进行调试,在电脑上不好截取一段gif动画.而之前使用模拟器的时候可以使用 GifCam 工具进行屏幕动画截取.Gif ...

最新文章

  1. 电信运营商如何玩转大数据?
  2. C++知识点54——RTTI(运行时类型识别)
  3. python扫描目录下文件_Python扫描目录读取文件,不考虑子目录
  4. HALCON示例程序holes.hdev孔洞提取
  5. 常用Arthas命令
  6. Sahi ---实现 Web 自动化测试
  7. git 查看分支_系统掌握Git之—探索.git
  8. XJOI 3281 A * B Problem again 题解
  9. Linux Kernel 5.0 近日正式面向公众
  10. 我总结了程序员转行得最有出路5个方向
  11. 今天的几点感悟_20160711
  12. css清除浮动的四种方法(详细)
  13. QGIS 3.14|地震数据动画效果实战(二)动画设置篇
  14. python爬虫-源码
  15. app四种开发模式的优缺点
  16. 对目前的人工智能的一些思考
  17. MySQL Inport--导入数据
  18. Yolo V3识别颜色及长短袖
  19. 【CBAM Pytorch实现】注意力机制综述阅读推荐
  20. Ubuntu下安装RealtekRTL8125网卡驱动

热门文章

  1. 【教你在win7中开启四声道效果】
  2. php简写是哪个国家的货币,php是神马货币全称
  3. python爬取付费音乐包_用Python代码来下载任意指定网易云歌曲(超详细版)
  4. 解决方案PPT设计:如何作出标准通用型的目录页?
  5. 宗成庆《文本数据挖掘》学习笔记:第一章绪论
  6. 宗成庆《自然语言理解》第三章作业
  7. 归并排序JAVA实现(详解)
  8. 软工课设2021-10-19会议记录
  9. python笔记start
  10. 汽车电子零部件电磁兼容EMC测试标准