我们在安装一些应用到Genymotion模拟器会提示:adb: failed to install xx.apk: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]
原因是Genymotion采用的编译方式是x86,默认不支持ARM架构编译的应用,所以无法安装,解决方案如下:
首先下载Genymotion-ARM-Translation.zip,注意不同的安卓版本对应不同的ARM-Translation,可以到官网下载,也可以通过百度网盘下载,百度云盘中的支持的安卓版本为8.0
1.windows系统
下载后可以手动拖拽压缩包到模拟器中,根据模拟器提示点击OK按钮即可进行安装,成功后重启模拟器即可。如果操作失败也可以使用Mac、Linux系统操作方法
2.Mac、Linux系统
下载后先将应用push到手机的sdcard/Download文件夹下,进入压缩包下载后的文件夹,使用命令:adb push ARM_Translation_Oreo_8.0.zip /sdcard/Download,此时会提示上传进度:ARM_Translation_Oreo_8.0.zip: 1...d. 16.5 MB/s (9390250 bytes in 0.543s)
完成后进入到手机push文件的目录下:adb shell ->cd sdcard/Download
手动运行flash-archive.sh脚本:sh /system/bin/flash-archive.sh /sdcard/Download/ARM_Translation_Oreo_8.0.zip ,提示信息如下,
Archive: /sdcard/Download/ARM_Translation_Oreo_8.0.zip creating: META-INF/com/ creating: META-INF/com/google/ creating: META-INF/com/google/android/ inflating: META-INF/com/google/android/update-binary inflating: META-INF/com/google/android/updater-script creating: system/ creating: system/lib/ creating: system/lib/arm/ inflating: system/lib/arm/check.xml inflating: system/lib/arm/cpuinfo inflating: system/lib/arm/cpuinfo.neon inflating: system/lib/arm/libandroid.so inflating: system/lib/arm/libandroidfw.so inflating: system/lib/arm/libandroid_runtime.so inflating: system/lib/arm/libaudioutils.so inflating: system/lib/arm/libbinder.so inflating: system/lib/arm/libc.so inflating: system/lib/arm/libcamera_client.so inflating: system/lib/arm/libcorkscrew.so inflating: system/lib/arm/libcrypto.so inflating: system/lib/arm/libcutils.so inflating: system/lib/arm/libc_orig.so inflating: system/lib/arm/libdl.so inflating: system/lib/arm/libdrmframework.so inflating: system/lib/arm/libdvm.so inflating: system/lib/arm/libEGL.so inflating: system/lib/arm/libemoji.so inflating: system/lib/arm/libETC1.so inflating: system/lib/arm/libexpat.so inflating: system/lib/arm/libfilterfw.so inflating: system/lib/arm/libfilterpack_imageproc.so inflating: system/lib/arm/libgabi++.so inflating: system/lib/arm/libgccdemangle.so inflating: system/lib/arm/libGLESv1_CM.so inflating: system/lib/arm/libGLESv2.so inflating: system/lib/arm/libgui.so inflating: system/lib/arm/libhardware.so inflating: system/lib/arm/libhardware_legacy.so inflating: system/lib/arm/libharfbuzz.so inflating: system/lib/arm/libhwui.so inflating: system/lib/arm/libicui18n.so inflating: system/lib/arm/libicuuc.so inflating: system/lib/arm/libjnigraphics.so inflating: system/lib/arm/libjpeg.so inflating: system/lib/arm/liblog.so inflating: system/lib/arm/libm.so inflating: system/lib/arm/libmedia.so inflating: system/lib/arm/libmedia_native.so inflating: system/lib/arm/libm_orig.so inflating: system/lib/arm/libnativehelper.so inflating: system/lib/arm/libnetutils.so inflating: system/lib/arm/libnfc_ndef.so inflating: system/lib/arm/libOpenMAXAL.so inflating: system/lib/arm/libOpenSLES.so inflating: system/lib/arm/libpatts_engine_jni_api.so inflating: system/lib/arm/libpixelflinger.so inflating: system/lib/arm/libskia.so inflating: system/lib/arm/libsonivox.so inflating: system/lib/arm/libspeexresampler.so inflating: system/lib/arm/libspeexwrapper.so inflating: system/lib/arm/libsqlite.so inflating: system/lib/arm/libssl.so inflating: system/lib/arm/libstagefright.so inflating: system/lib/arm/libstagefright_foundation.so inflating: system/lib/arm/libstdc++.so inflating: system/lib/arm/libstlport.so inflating: system/lib/arm/libsurfaceflinger.so inflating: system/lib/arm/libsync.so inflating: system/lib/arm/libui.so inflating: system/lib/arm/libusbhost.so inflating: system/lib/arm/libutils.so inflating: system/lib/arm/libvorbisidec.so inflating: system/lib/arm/libwpa_client.so inflating: system/lib/arm/libz.so inflating: system/lib/arm/linker inflating: system/lib/libdvm_houdini.so inflating: system/lib/libhoudini.so [flash_archive] Remount /system/ in rw [flash_archive] Start file install [ERROR][flash_archive] META-INF/com/google/android/update-binary is an ARM binary, using system updater [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libandroid.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libandroidfw.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libandroid_runtime.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libaudioutils.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libbinder.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libc.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libcamera_client.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libcorkscrew.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libcrypto.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libcutils.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libc_orig.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libdl.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libdrmframework.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libdvm.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libEGL.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libemoji.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libETC1.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libexpat.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libfilterfw.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libfilterpack_imageproc.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libgabi++.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libgccdemangle.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libGLESv1_CM.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libGLESv2.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libgui.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libhardware.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libhardware_legacy.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libharfbuzz.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libhwui.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libicui18n.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libicuuc.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libjnigraphics.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libjpeg.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/liblog.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libm.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libmedia.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libmedia_native.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libm_orig.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libnativehelper.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libnetutils.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libnfc_ndef.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libOpenMAXAL.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libOpenSLES.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libpatts_engine_jni_api.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libpixelflinger.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libskia.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libsonivox.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libspeexresampler.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libspeexwrapper.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libsqlite.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libssl.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libstagefright.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libstagefright_foundation.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libstdc++.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libstlport.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libsurfaceflinger.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libsync.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libui.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libusbhost.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libutils.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libvorbisidec.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libwpa_client.so lib (x86 version exists) [sanitize_zipfile_and_execute_update_binary] Skipping system/lib/arm/libz.so lib (x86 version exists) adding: META-INF/ (stored 0%) adding: META-INF/com/ (stored 0%) adding: META-INF/com/google/ (stored 0%) adding: META-INF/com/google/android/ (stored 0%) adding: META-INF/com/google/android/update-binary (deflated 35%) adding: META-INF/com/google/android/updater-script (deflated 35%) adding: system/ (stored 0%) adding: system/lib/ (stored 0%) adding: system/lib/arm/ (stored 0%) adding: system/lib/arm/check.xml (deflated 41%) adding: system/lib/arm/cpuinfo (deflated 32%) adding: system/lib/arm/cpuinfo.neon (deflated 32%) adding: system/lib/arm/linker (deflated 49%) adding: system/lib/libdvm_houdini.so (deflated 69%) adding: system/lib/libhoudini.so (deflated 69%) chmod: updater: No such file or directory [flash_archive] Remount /system/ in ro [flash_archive] Delete tmp directory [flash_archive] Done successfully ! {Result:OK};
{Result:OK}表示安装成功,完成后需要重启模拟器,重启后再次安装ARM架构编译的应用则可以正常安装