我正在尝试更改版本代码,版本名称和应用程序图标。下面是我的代码
variant.outputs.all { output ->
def newApkName
if (output.zipAlign) {
newApkName = "Application.apk"
}
output.processManifest.doLast{
// Stores the path to the maifest.
String manifestPath = "$manifestOutputDirectory/AndroidManifest.xml"
// Stores the contents of the manifest.
def manifestContent = file(manifestPath).getText()
// Changes the version code in the stored text.
manifestContent = manifestContent.replace('android:versionName="dev_build"',
String.format('android:versionName="%s"', variant.versionName))
// Overwrites the manifest with the new text.
file(manifestPath).write(manifestContent)
}
output.processManifest.doLast{
// Stores the path to the maifest.
String manifestPath = "$manifestOutputDirectory/AndroidManifest.xml"
// Stores the contents of the manifest.
def manifestContent = file(manifestPath).getText()
// Changes the version code in the stored text.
manifestContent = manifestContent.replace('android:icon="@drawable/app_icon_main"',
String.format('android:icon="@drawable/%s"', getVersionIconName()))
// Overwrites the manifest with the new text.
file(manifestPath).write(manifestContent)
}
outputFileName = "Application.apk"
}
得到以下警告: 警告:API'variantOutput.getProcessManifestProvider()'已过时,已被'variantOutput.getProcessManifestProvider()'取代。 它将在2019年底删除。 有关更多信息,请参见https://d.android.com/r/tools/task-configuration-avoidance。 要确定正在调用variantOutput.getProcessManifest()的内容,请在命令行上使用-Pandroid.debug.obsoleteApi = true来显示堆栈跟踪。 受影响的模块:应用程序
环境详细信息: Android Studio:3.3.1 摇篮版本:4.10.0 生成工具版本28.0.2
答案 0 :(得分:0)
更改以下内容
output.processManifest.doLast {
//your code
}
与
output.getProcessManifestProvider().get().doLast {
//your code
}