Изменила ли студия Android способ упаковки apk версии выпуска?


предисловие

 Я некоторое время не занимался Android, и когда я начал релизный пакет для основных операций, пакет был неудачным, и я сообщаю

Сгенерировать подписанный APK: APK-файлы успешно сгенерированы для модуля «CorrectionPlatform.app» с 0 вариантами сборки:

Но главное не подсказывает отказ упаковки;

После периода мучений и различных поисков я наконец нашел еще один способ сгенерировать релиз-пакет.

Прежде чем смотреть на следующее, по умолчанию вы сгенерировали файл jks.Я не буду упоминать, что такое jsk здесь; 

Во-первых, предыдущий метод упаковки

    1. Предыдущий метод упаковки: нажмите «Сборка» > «Создать подписанный пакет / APK» на верхней панели инструментов… как показано на рисунке.

2. Выберите APK во всплывающем окне, а затем нажмите «Далее».

 3. Затем выберите файл jsk, чтобы ввести соответствующую информацию, и перейдите к следующему

4. Затем выберите выпуск и нажмите «Готово», а затем просто подождите, пока пакет будет завершен.

 5. Вышеупомянутый метод — это метод, который я использовал ранее, и пакет выпуска может быть сгенерирован, но я не знаю, почему пакет выпуска не может быть сгенерирован указанным выше методом.

Тогда посмотрите на следующий метод

2. Метод упаковки «Новый мир»

 

1. Нажмите на верхний файл, как показано ниже.

2. Нажмите Moudle, как показано ниже.

3. После добавления выпуска на предыдущем шаге выберите jsk, введите пароль, псевдоним.....

4. После настройки выпуска моделей нажмите Build Variants для выбора и продолжайте смотреть на рисунок ниже.

5. После выполнения вышеуказанных шагов нажмите «Просмотр» > «Варианты сборки» на верхней панели инструментов.

После нажатия появится следующее окно, выберите отладку как выпуск

6. Нажмите «Сборка» > на верхней панели инструментов, как показано на рисунке ниже, и позже он будет упакован в пакет выпуска.

3. Настройте сгенерированное имя apk

 // 一定要写在android节点外 ---注意写的位置----
def releaseTime() {
    return new Date().format("yyyyMMddHHmmss", TimeZone.getDefault())
}

ext.appName = "QQ"

    // 一定要写在android节点中 ---注意写的位置----
    applicationVariants.all { variant ->
        variant.outputs.all { output ->
            def outputFile = output.outputFile
            if (outputFile != null && outputFile.name.endsWith('.apk')) {
                def fileName
                if (variant.buildType.name == 'release') {
                    fileName = "${appName}-${defaultConfig.versionName}-${releaseTime()}-release.apk"
                } else if (variant.buildType.name == 'debug') {
                    fileName = "${appName}-${defaultConfig.versionName}-${releaseTime()}-debug.apk"
                } else {
                    fileName = "${appName}-${defaultConfig.versionName}-${releaseTime()}-other.apk"
                }
                outputFileName = fileName
            }
        }
    }

 

 

Подведем итог

 Учиться бесконечно, и я не могу идти в ногу со временем.

Supongo que te gusta

Origin blog.csdn.net/weixin_41620505/article/details/127533320
Recomendado
Clasificación