Genymotion是一款基于x86架構(gòu)的Android模擬器,而大部分應(yīng)用是arm架構(gòu)。所以兩者不兼容。
對(duì)于x86的真機(jī),X86處理器已經(jīng)能夠基本兼容ARM了指令。對(duì)于Genymotion模擬器,則通過(guò)安裝Genymotion-ARM-翻譯來(lái)進(jìn)行兼容。向Genymotion模擬器安裝Genymotion-ARM-Translation.zip。該包目前可以支持到android sdk API26也就是android 8.0.0系統(tǒng)。
genymotion使用Genymotion-ARM-Translation.zip文件是不通的,每個(gè)Android版本對(duì)應(yīng)ARM指令集的版本也是不一樣,即libhoudini.so是有Android版本要求的。
avd manager里android9.0的cpu架構(gòu)也是x86的。
二、不能安裝genymotion-arm-translation原因
由于在Win10或者某些情況下不具備管理員權(quán)限,所以出現(xiàn)了不能拖拽的情況,或是拖拽變?yōu)閏opy的情況、拖拽變?yōu)閏opy但無(wú)效的情況。
三、不能安裝genymotion-arm-translation解決方法:
1、進(jìn)入android sdk安裝目錄platform-tools文件夾里,地址欄輸入cmd,打開命令行窗口
2、將文件導(dǎo)入模擬器的/sdcard/Download/目錄下,輸入并執(zhí)行adb push E:\\\\Genymotion-ARM-Translation_v1.1.zip /sdcard/Download/,注意路徑區(qū)分大小寫
3、提示“1 file pushed”,表示導(dǎo)入成功
4、輸入并執(zhí)行adb shell flash-archive.sh /sdcard/Download/Genymotion-ARM-Translation_v1.1.zip
5、最終出現(xiàn)“Done successfully !”,表示安裝成功
6、重啟模擬器
四、確定自己刷的libhoudini.so文件是否正確
1、通過(guò)adb install安裝arm apk時(shí),比如安裝wechat,如果terminal有下面的報(bào)錯(cuò):
WARNING: linker: libhoudini.so has text relocations. This is wasting memory and prevents security hardening. Please fix.
這說(shuō)明libhoudini.so文件的版本不對(duì)
2、安裝完APK后,APK無(wú)法運(yùn)行。
3、刷完上面Genymotion-ARM-Translation.zip后,還需要自己刷Gapps(https://opengapps.org/)。
更多關(guān)于云服務(wù)器,域名注冊(cè),虛擬主機(jī)的問(wèn)題,請(qǐng)?jiān)L問(wèn)西部數(shù)碼官網(wǎng):m.ps-sw.cn