最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android Studio gradle配置packagingOptions打包so庫(kù)重復(fù)

 更新時(shí)間:2022年11月17日 10:40:52   作者:早起的年輕人  
這篇文章主要為大家介紹了Android Studio gradle配置packagingOptions打包so庫(kù)重復(fù)問(wèn)題的解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

在安卓開(kāi)發(fā)中,通常會(huì)使用到gradle來(lái)編譯,在安卓項(xiàng)目的app目錄下的build.gradle中是用來(lái)對(duì)編譯進(jìn)行配置的,packagingOptions 是其中的一個(gè)打包配置,常見(jiàn)的設(shè)置項(xiàng)有exclude、pickFirst、doNotStrip、merge。

在日常代碼開(kāi)發(fā)中,我們需要知其然,而知其所以然,本文章知識(shí)也是Android日常瘦身的的必備知識(shí)。

pickFirst 匹配

pickFirst,匹配到多個(gè)相同文件,只提取第一個(gè),不能過(guò)濾aar和jar中的文件。

packagingOptions {
  pickFirst 'lib/arm64-v8a/libmsoptimize.so'
}

比如下面的打包日志出錯(cuò),就是說(shuō)有重復(fù)相同的so庫(kù),那么通過(guò) pickFirst 來(lái)配置使用第一個(gè)就可以解決。 2 files found with path ‘lib/arm64-v8a/libmsoptimize.so’ from inputs:

doNotStrip 設(shè)置

doNotStrip 可以設(shè)置某些動(dòng)態(tài)庫(kù)不被優(yōu)化壓縮。

比如在使用華為HMS的相關(guān)服務(wù)時(shí),他會(huì)讓你注意不要壓縮一些so庫(kù)。

    packagingOptions {
        pickFirst 'lib/libc++_shared.so'
        doNotStrip "lib/armeabi/libYTCommon.so"
        doNotStrip "lib/armeabi-v7a/libYTCommon.so"
    }

merge 將匹配的文件都添加到APK中

merge 和pickFirst有些相反,會(huì)合并所有文件

    packagingOptions {
        merge '**/LICENSE.txt'
        merge '**/NOTICE.txt'
    }

exclude 過(guò)濾

exclude 過(guò)濾掉某些文件或者目錄不添加到APK中

不能過(guò)濾aar和jar中的內(nèi)容,比如項(xiàng)目中有些依賴庫(kù)中有多余的so庫(kù),在App中并不是必需的,所以在打包的時(shí)候就可以將其過(guò)濾了

    packagingOptions {
        exclude 'META-INF/**'
        exclude 'lib/arm64-v8a/libmediaplayer.so'
    }

以上就是Android Studio gradle配置packagingOptions打包so庫(kù)重復(fù)的詳細(xì)內(nèi)容,更多關(guān)于Android Studio gradle配置的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評(píng)論

黔南| 格尔木市| 黎川县| 丽江市| 阿坝县| 大丰市| 福建省| 贵南县| 保靖县| 梅河口市| 丘北县| 蒙山县| 台湾省| 禄丰县| 招远市| 公主岭市| 年辖:市辖区| 佳木斯市| 锡林郭勒盟| 林周县| 漳浦县| 三穗县| 邛崃市| 莫力| 礼泉县| 文成县| 阿拉善右旗| 高淳县| 宜兰县| 会理县| 新巴尔虎左旗| 塔河县| 绿春县| 盐边县| 施秉县| 上栗县| 河北省| 德化县| 云安县| 孟州市| 伊吾县|