Измените сгенерированное имя apk из "app-debug.apk"

Каждый раз, когда я запускаю проект с Android Studio (1.02), он генерирует unsigned apk, который находится в папке.. \build\output\apk и по умолчанию получает имя "app-debug.apk"

Я хочу изменить это имя по умолчанию на что-то еще.

Возможно ли это? Как?

Ответы

Ответ 1

Вы можете использовать applicationVariants и изменить выходной файл в build.gradle. Вы также можете изменить имя в соответствии с вашими потребностями.

buildTypes{

    applicationVariants.all { variant ->                              
        variant.outputs.each { output ->                              
            output.outputFile = file("$project.buildDir/apk/test.apk")
        }                                                             
    }

}

Ответ 2

В build.gradle (Module: app):

android {
    ...
    defaultConfig {
        ...
        setProperty("archivesBaseName", "MyNewAppNameGoesHere")
    }
}

Это работает, изменяя archivesBaseName -property и работает для Gradle Version >= 2.0, последний раз тестировался с 2.1.0.

Ответ 3

В "приложении" часть имени использует имя папки вашего прикладного модуля (по умолчанию это "приложение" ). См. Ссылку ниже о том, как изменить это.
Почему мое имя APK является общим?

Префикс '-debug' - это то, что вы можете изменить в настройках модуля в Тип сборки

Ответ 4

Если кто-то хочет изменить имя apk за пределами студии Android (просто отправьте этот файл кому-то другому, как и в моем случае), просто щелкните правой кнопкой мыши имя приложения и измените его на все, что захотите.

Ответ 5

defaultConfig {  

    applicationId "com.dcarl661.awesomelayout"

    minSdkVersion 14

    targetSdkVersion 25

    versionCode 1

    versionName "1.0"

    //here put it in the section where you have the version stuff
    setProperty("archivesBaseName", "AwesomeLayout")

}

Ответ 6

Решение для gradle3:

android.applicationVariants.all { variant ->
    variant.outputs.all {
        outputFileName = applicationId;
        outputFileName += "-v" + android.defaultConfig.versionName;
        if (variant.buildType.name == "release") {
            outputFileName += ".apk";
        } else {
            outputFileName += "-SNAPSHOT.apk";
        }
    }
}

Ответ 7

Возможно, этот вопрос (и его принятый ответ) вам интересен: Как установить имя версии в имени файла APK с помощью gradle? В нем описывается, как поместить имя versionName в имя APK.

Вы должны использовать часть "Обновить" принятого ответа. Также вам нужно имя versionName (в этом примере), объявленное в файле defaultConfig в файле build.gradle. Он также работает, если вы определяете versionCode в build.gradle(как описано здесь: http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Manifest-entries).