版權聲明:本文爲延成原創文章,轉載請標明出處
packagingOptions常見的設置項有exclude、pickFirst、doNotStrip、merge。
1. exclude,過濾掉某些文件或者目錄不添加到APK中,作用於APK,不能過濾aar和jar中的內容。
比如:
packagingOptions {
exclude 'META-INF/**'
exclude 'lib/arm64-v8a/libmediaplayer.so'
}
2. pickFirst,匹配到多個相同文件,只提取第一個,作用於APK,不能過濾aar和jar中的文件。
比如:
packagingOptions {
pickFirst "lib/armeabi-v7a/libaaa.so"
pickFirst "lib/armeabi-v7a/libbbb.so"
}
3. doNotStrip,可以設置某些動態庫不被優化壓縮。
比如:
packagingOptions{
doNotStrip "*/armeabi/*.so"
doNotStrip "*/armeabi-v7a/*.so"
}
4. merge,將匹配的文件都添加到APK中,和pickFirst有些相反,會合並所有文件。
比如:
packagingOptions {
merge '**/LICENSE.txt'
merge '**/NOTICE.txt'
}