天天看點

安卓SO層開發 -- 編譯指定平台的SO檔案

作者:之乎者也吧呀

0x01 四種SO檔案

1、一個apk中的lib檔案夾裡面可能有四個子檔案夾

安卓SO層開發 -- 編譯指定平台的SO檔案

2、裡面是運作在不同平台的SO檔案,SO檔案内容不一樣,但運作效果是一樣

armeabi-v7a  運作在32位的手機上
arm64-v8a    運作在64位的手機上
x86          運作在32位的模拟器上
x86_64       運作在64位的模拟器上           

0x02 指定32位和64位模拟器用的SO檔案

1、打開項目的build.gradle檔案,預設是四種平台都生成的,如果隻要兩種種,就隻留下兩個。

externalNativeBuild {
            cmake {
                cppFlags ''
            }
            ndk {
                 abiFilters 'x86','x86_64'
            }


        }           

2、修改完後,記得同步一下

安卓SO層開發 -- 編譯指定平台的SO檔案

3、選擇Build-Build Bundle--Build APK

安卓SO層開發 -- 編譯指定平台的SO檔案

4、點選右下角的locate,直接跳轉到生成apk的路徑

安卓SO層開發 -- 編譯指定平台的SO檔案

5、裡面隻有兩個

安卓SO層開發 -- 編譯指定平台的SO檔案