2
task copyLibs(type: Copy) {
mybuildpath('path.name').string.split(" ")
.collect {
mybuildpath('[' + it + ']pkg.lib').string
}
.findAll {
it.length() > 0
}
.each {
from(new File(it)) {
if (!getCurrentFlavor().contains('SomeKeyWord')) {
include '**/folder1/**/*.so'
include '**/folder2/**/*.so'
// include '**/lib1.so'
// include '**/lib2.so'
// include '**/lib3.so'
// include '**/lib4.so'
} else {
include '**/*.so'
}
}
into new File(buildDir, 'native-libs-folder')
}
}
私のプロジェクトのandroid.gradleこれはコンパイル時にいくつかの.soファイルを含める必要があります。 folder1とfolder2にはこれらのすべてのライブラリ[lib1、lib2、...など]があります。それらをすべて含めたいと思います。 しかし、このコードは動作していませんし、自分のnative-lib-folderにあるライブラリをインポートしていません。 しかし、私はそれらの2行をコメントし、以下の4つのコメントを外すと[**それらの** **/lib1.so、.. ]これらの4つのライブラリは、native-lib-folderにコピーされています。 私は検索して、正規表現構文が正しいと感じていますが、私が間違っていることをまだ理解できません。 ご案内くださいandroid.gradleでファイルへのパスを正しく設定できません