关于android中的armeabi、armeabi-v7a、arm64-v8a及x86等
?
1.Android 設(shè)備的CPU類型
?
armeabi設(shè)備只兼容armeabi,不支持硬件輔助浮點(diǎn)運(yùn)算,支持所有的 ARM* 設(shè)備;
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.Android設(shè)備如何加載.so文件
以arm64-v8a設(shè)備為例,該Android設(shè)備優(yōu)先尋找libs目錄下的arm64-v8a文件夾。如果有文件夾,但是沒(méi)有so庫(kù),則會(huì)報(bào)錯(cuò)。如果沒(méi)有arm64-v8a文件夾,則會(huì)去找armeabi-v7a文件夾。如果找不到armeabi-v7a文件夾,則尋找armeabi文件夾,兼容運(yùn)行該文件夾下的so。
3.實(shí)際操作
由上兼容性可以看到不同設(shè)備基本都是可以兼容armeabi的so庫(kù),只是效率,性能上有問(wèn)題。
反編譯微信,里面只有armeabi這個(gè)文件夾,應(yīng)該是在這個(gè)目錄下放置其他架構(gòu)的SO文件,再通過(guò)代碼實(shí)現(xiàn)選擇加載哪一個(gè)架構(gòu)的SO文件。
使用armeabi的手機(jī)已經(jīng)很少了,幾乎忽略不計(jì)了。
為了減小 apk 體積,只保留 armeabi 和 armeabi-v7a 兩個(gè)文件夾,并保證這兩個(gè)文件夾中 .so 數(shù)量一致
對(duì)只提供 armeabi 版本的第三方 .so,原樣復(fù)制一份到 armeabi-v7a 文件夾
總結(jié)
以上是生活随笔為你收集整理的关于android中的armeabi、armeabi-v7a、arm64-v8a及x86等的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: about window.onload
- 下一篇: Sicily-1063