gpt4 book ai didi

android - Gradle 进程 list 与新的 Manifest Merger

转载 作者:太空宇宙 更新时间:2023-11-03 12:07:05 24 4
gpt4 key购买 nike

我一直在使用这段代码从 Manifest 文件中删除我不想要的权限,但是对于新的 Merger,这是不可能的,而且我不具备 gradle 的知识来修改它。

applicationVariants.all { variant ->
variant.processManifest.doLast {
println("configuring AndroidManifest.xml removing READ_CALL_LOG");

def manifestFile = new File("${buildDir}/intermediates/manifests/${variant.dirName}/AndroidManifest.xml")
def content = manifestFile.getText()
def updatedContent = content.replaceAll("<android:uses-permission android:name=\"android.permission.READ_CALL_LOG\" />", "")
manifestFile.write(updatedContent)
}
variant.processResources.manifestFile = new File("${buildDir}/intermediates/manifests/${variant.dirName}/AndroidManifest.xml")

}

我试过类似的方法,但它不起作用

    applicationVariants.all { variant ->
variant.outputs.each { output ->
def manifestOutFile = output.processManifest.manifestOutputFile
def newFileContents = manifestOutFile.getText('UTF-8').replace("<android:uses-permission android:name=\"android.permission.READ_CALL_LOG\" />", "")
manifestOutFile.write(newFileContents, 'UTF-8')
}
}

我怎样才能通过新的合并实现同样的目标?

提前致谢。

最佳答案

applicationVariants.all { variant ->
variant.outputs.each { output ->
output.processManifest.doLast{
def manifestOutFile = output.processManifest.manifestOutputFile
def newFileContents = manifestOutFile.getText('UTF-8').replace("<android:uses-permission android:name=\"android.permission.READ_CALL_LOG\" />", "")
manifestOutFile.write(newFileContents, 'UTF-8')
}
}
}

这可以轻松帮助您。

关于android - Gradle 进程 list 与新的 Manifest Merger,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27041903/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com