Intereting Posts
Сильная прямая адресная строка в Chrome на Android Модернизация сети делает сетевые вызовы в основном потоке? Android 4.4 Случайная авария KitKat Как использовать пользовательский шрифт в android xml? Как обрабатывать AsyncTask в ActionBarActivity Fragments при использовании ViewPager? Использование GSON в Android для анализа сложного объекта JSON Печать на принтер AirPrint с Android Как найти все точки в пути в Android? Android Studio Gradle: ошибка: выполнение не выполнено для задачи: app: processDebugGoogleServices. > Отсутствует соответствующий клиент для пакета Camera setDisplayOrientation () в портретном режиме Разрывы Соотношение сторон IllegalArgumentException: неуправляемый дескриптор с использованием gms.maps.model.Marker.setIcon Что такое семейство шрифтов по умолчанию в Android? Как удалить выбранный элемент из списка с помощью CursorAdapter Android рисует линию, которая следует за вашим пальцем Более подробное объяснение procstats для Android

Создайте версию apk с настройкой формата имени в Android Studio

Я хочу, чтобы .apk был создан со следующим форматом имени (с меткой времени).

Как я могу установить его?

Format: {app_name}{yyyymmddhis}.apk

Теперь он исправлен с именем {app_name}-{release}.apk

Solutions Collecting From Web of "Создайте версию apk с настройкой формата имени в Android Studio"

build.gradle файле build.gradle вы должны изменить / добавить buildTypes следующим образом:

 buildTypes { release { signingConfig signingConfigs.release applicationVariants.all { variant -> def file = variant.outputFile def date = new Date(); def formattedDate = date.format('yyyyMMddHHmmss') variant.outputFile = new File( file.parent, file.name.replace("-release", "-" + formattedDate) ) } } } 

====== EDIT с Android Studio 1.0 ======

Если вы используете Android Studio 1.0, вы получите сообщение об ошибке:

 Error:(78, 0) Could not find property 'outputFile' on com.android.build.gradle.internal.api.ApplicationVariantImpl_Decorated@67e7625f. 

Вы должны изменить часть build.Types :

 buildTypes { release { signingConfig signingConfigs.releaseConfig applicationVariants.all { variant -> variant.outputs.each { output -> def date = new Date(); def formattedDate = date.format('yyyyMMddHHmmss') output.outputFile = new File(output.outputFile.parent, output.outputFile.name.replace("-release", "-" + formattedDate) ) } } } } 

В качестве примечания, мне бы очень хотелось узнать, где люди получают объекты объектов объектов построения градиентов.

Чтобы построить это, я использовал некоторые пробные версии и ошибки, немного Googling, и это (что устарело)

 android { ... buildTypes { debug { signingConfig signingConfigs.debug } release { signingConfig signingConfigs.release minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' } applicationVariants.all { variant -> variant.outputs.each { output -> def flavor = "default"; if (variant.productFlavors.size() > 0) flavor = variant.productFlavors.get(0); def initials = "DefaultFlavor"; if (flavor.name == "flavor1") initials = "F1"; else if (flavor.name == "flavor2") initials = "F2"; def build = "Debug"; if (variant.buildType.name == "release") build = "Release" def finalName = variant.versionCode + "-" + initials + "-" + build + "-v" + flavor.versionName + "-MyAppName.apk"; output.outputFile = new File(output.outputFile.parent, finalName) } } } ... } 

Итак, как побочная заметка, если вы хотите определить имена своего проекта libs, вот быстрый скрипт, убедитесь, что вы поместили его в каждый из файлов сборки градиента библиотеки.

 android { ... defaultConfig { minSdkVersion 10 targetSdkVersion 16 versionCode 1 versionName "1.0.4" project.version = versionName } libraryVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null && outputFile.name.endsWith('.aar')) { def fileName = "${archivesBaseName}-v${version}.aar" output.outputFile = new File(outputFile.parent, fileName) } } } ... } 

Вы должны что-то изменить. Выполнение динамически.

project.archivesBaseName = {app_name}{yyyymmddhis};

Но я прочитал, что это будет устаревшим.

Создание свойств по требованию (иначе динамические свойства) устарело и планируется удалить в Gradle 2.0. Устаревшее динамическое свойство: «archivesBaseName» в «корневом проекте» myapp », значение:« AnotherName ».