API 'OptionOutput.getProcessManifest ()' устарел - PullRequest
0 голосов
/ 21 февраля 2019

Я пытаюсь изменить код версии, название версии и значок приложения.Ниже приведен мой код

    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 'variableOutput.getProcessManifest ()' устарел и был заменен на 'OptionOutput.getProcessManifestProvider ()'.Он будет удален в конце 2019 года. Для получения дополнительной информации см. https://d.android.com/r/tools/task-configuration-avoidance.. Чтобы определить, что вызывает optionOutput.getProcessManifest (), используйте -Pandroid.debug.obsoleteApi = true в командной строке для отображения трассировки стека.,Затронутые модули: Приложение

Подробности среды: Android Studio: 3.3.1 Версия Gradle: 4.10.0 Версия инструмента сборки 28.0.2

1 Ответ

0 голосов
/ 27 мая 2019

Измените следующее

output.processManifest.doLast {
    //your code
}

с

output.getProcessManifestProvider().get().doLast {
    //your code
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...