Gradle 如何从 apk 中排除文件

xed*_*edo 5 android gradle

我将密钥库存储在资产目录中。如何在构建中排除它以创建 .apk?

我以这种方式尝试过,但仍然存在:

android {
    ...
    packagingOptions {
            ...
            exclude 'META-INF/LICENSE.txt'
            ...
            exclude 'assets/keystore'
    }
}
Run Code Online (Sandbox Code Playgroud)

它排除LICENSE.txt但不排除keystore

Edu*_*omo 3

尝试下一步:

    ...
    packagingOptions {
        exclude 'META-INF/LICENSE.txt'
    }
}

android.applicationVariants.all { variant ->
    //if (variant.name.contains('Release')) { // exclude source and sourcemap from release builds
    def rmkeystore = task("delete${variant.name}.rmkeystore", type: Delete) {
        delete "${buildDir}/intermediates/assets/${variant.dirName}/keystore"
    }
    variant.mergeAssets.finalizedBy rmkeystore
    //}
}
Run Code Online (Sandbox Code Playgroud)

参考:/sf/answers/2041817921/