关于Android手机CPU不同架构的问题
1、共有7種架構(gòu)
- armeabi設(shè)備只兼容armeabi;
- armeabi-v7a設(shè)備兼容armeabi-v7a、armeabi;
- arm64-v8a設(shè)備兼容arm64-v8a、armeabi-v7a、armeabi;
- X86設(shè)備兼容X86、armeabi;
- X86_64設(shè)備兼容X86_64、X86、armeabi;
- mips64設(shè)備兼容mips64、mips;
- mips只兼容mips;
2、兼容性注意
如果設(shè)備室arm64-v8a的,那么設(shè)備先找這個(gè)文件夾,如果沒有這個(gè)文件夾,再去找armeabi-v7a,然后是armeabi。如果有這個(gè)文件夾,但沒有對應(yīng)的so文件,那么將直接拋異常。
如果引用了不同第三方平臺的so文件,并且他們所支持的平臺又有沖突那么可以abiFilters指定用哪個(gè)架構(gòu)的so文件,其他平臺的就會被忽略。
第三方aar文件,如果這個(gè)sdk對abi的支持比較全,可能會包含armeabi、armeabi-v7a、x86、arm64-v8a、x86_64五種abi,而你應(yīng)用的其它so只支持armeabi、armeabi-v7a、x86三種,直接引用sdk的aar,會自動(dòng)編譯出支持5種abi的包。但是應(yīng)用的其它so缺少對其它兩種abi的支持,那么如果應(yīng)用運(yùn)行于arm64-v8a、x86_64為首選abi的設(shè)備上時(shí),就會==crash==了哦。
3、Genymotion中arm的使用
需要安裝對應(yīng)的arm-translation文件。可參考文章安裝,win10可能會安裝失敗。
4、參考地址
https://zhuanlan.zhihu.com/p/23102158
http://blog.coderclock.com/2017/05/07/android/Android-so-files-compatibility-and-adaptation/
https://www.diycode.cc/topics/691
https://www.cnblogs.com/ring1992/p/7248585.html
轉(zhuǎn)載于:https://www.cnblogs.com/zhaoyihao/p/10037938.html
總結(jié)
以上是生活随笔為你收集整理的关于Android手机CPU不同架构的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 央视曝光磁性文具安全隐患:危害极大 千万
- 下一篇: 03—Shell脚本编写规范