android 模拟器测试之旅
近期,app 需要在模擬器上跑,主要驗(yàn)證在低內(nèi)存(1g~2g)的環(huán)境中看下app會(huì)不會(huì)出現(xiàn)崩潰或者異常。
Android studio的模擬器
最開始就選擇了google親兒子驗(yàn)證。畢竟下載速度快,寫測(cè)試demo的時(shí)候也運(yùn)行過。一番操作下來,首先發(fā)現(xiàn)了第一個(gè)問題:
1. 模擬器占用空間大,C盤不夠用了
百度下,配置了環(huán)境變量android_sdk_home,然后去C:\Users\xxx\.android\avd 目錄把對(duì)應(yīng)的模擬器刪了很輕松就搞定了。
創(chuàng)建新的avd,選擇android版本,選擇system image,創(chuàng)建好了之后。第二步就是安裝apk了。因?yàn)閍pk里面有很多資源文件,包括外部配置,地圖等。直接運(yùn)行是沒法安裝的,因此都是把資源文件打包到apk里面再進(jìn)行安裝。打好包,打開cmd,跳轉(zhuǎn)到adb 命令所在的目錄(我的是D:\software\android\platform-tools下),把a(bǔ)pk拷貝過來,運(yùn)行命令adb install 命令。
到這里出現(xiàn)了第二個(gè)問題:
2. install_failed_no_matching_abis 錯(cuò)誤。
繼續(xù)百度:
https://stackoverflow.com/questions/24572052/install-failed-no-matching-abis-when-install-apk
上面講的比較清楚了程序用的native library跟你模擬器的cpu 架構(gòu)不匹配。網(wǎng)上搜了下解決辦法,在app的build.gradle中加上這樣一句話即可:
OK,按部就班操作。重新打release包,報(bào)錯(cuò)。但是release下就生成了對(duì)應(yīng)的apk。查看了下app的build.gradle的配置,注釋掉了相對(duì)的打包配置
重新打包,成功。在release下,每個(gè)架構(gòu)都生成了一個(gè)apk.
查找了下模擬器的架構(gòu),發(fā)現(xiàn)是x86的,
把a(bǔ)pp-x86-release.apk 放到了對(duì)應(yīng)的目錄下,重新運(yùn)行 adb install 命令。安裝成功!
原以為萬(wàn)事大吉,后面只需要找找修改模擬器內(nèi)存的方式改下。然后運(yùn)行下就ok了。可惜在運(yùn)行的時(shí)候發(fā)現(xiàn)又報(bào)錯(cuò)了, 第三個(gè)問題:
so庫(kù)與jar包不匹配
難道剛剛解決的不是這個(gè)問題嗎?回想起之前弄so文件的時(shí)候也經(jīng)常出現(xiàn)這個(gè)錯(cuò)誤。看了下代碼結(jié)構(gòu)
難道說要找armeab-v7a架構(gòu)的模擬器才行?簡(jiǎn)單查了下 還真在模擬器的選項(xiàng)上發(fā)現(xiàn)了。
好吧,那就重新建立個(gè)模擬器吧,反正也不費(fèi)什么事兒,一通操作… , 下載成功,啟動(dòng)模擬器!第4個(gè)問題:
google arm架構(gòu)的模擬器簡(jiǎn)直沒法用
啟動(dòng)模擬器過程中彈出了個(gè)這個(gè)
沒事,小問題,不管它,等了幾分鐘模擬器黑屏沒動(dòng)靜,又等了十幾分鐘一直卡在android圖標(biāo)界面。半個(gè)多小時(shí)之后模擬器終于啟動(dòng)了,懷著激動(dòng)的心情點(diǎn)擊了幾下模擬器,發(fā)現(xiàn)模擬器卡住不動(dòng)了。重啟之后一通操作的我終于意識(shí)到了上面那個(gè)10倍速度的慢是有多慢。
一邊掛著google的模擬器,一遍尋求其它的解決辦法。
轉(zhuǎn)戰(zhàn)genymotion
聽大家說genymotion模擬器好用,而且安裝可以不用adb命令,直接拖拽。那好吧,去官網(wǎng)瞅瞅
下一個(gè)帶VitualBox的。安裝,exe先裝genymotion模擬器,再裝virtualBox。 一切順利,啟動(dòng);哦,要賬號(hào),記得之前好像不需要賬號(hào)的啊?算了 注冊(cè)一個(gè);啥,要收費(fèi)?那免費(fèi)試用30天的吧!register之后,發(fā)現(xiàn)郵箱里面并沒有收到激活郵件,等了幾分鐘,發(fā)現(xiàn)了這個(gè)。
這也太不靠譜了吧?我要這兒折騰一個(gè)小時(shí)(實(shí)際也沒要1h,大概十幾分鐘之后收到了郵件)?而且聽說這個(gè)模擬器還需要去下載一個(gè)兼容包(Genymotion-ARM-Translation.zip)才能跑arm架構(gòu)的apk。此路不通?換?
轉(zhuǎn)戰(zhàn)雷電模擬器
尋尋覓覓,找到個(gè)雷電模擬器(聽說支持arm架構(gòu)),網(wǎng)上一搜發(fā)現(xiàn)有很多夾帶私貨的推廣。發(fā)下官網(wǎng)地址:
https://www.ldmnq.com/
進(jìn)去下載試了下,發(fā)現(xiàn)出乎意料的好用。程序很快就安裝跑起來了,沒出幺蛾子,修改內(nèi)存簡(jiǎn)單,在設(shè)置里面修改, 重啟就好。至此模擬器的選擇就搞定了。
吐槽一下不好的地方:
好了 ,自此完結(jié)。
總結(jié)
以上是生活随笔為你收集整理的android 模拟器测试之旅的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(1299):gulp插件
- 下一篇: PDF转图片实现方式