Обновление Android Studio 2.2: выровненный APK (zipAlign) не создается с помощью нового Gradle Plugin 2.2.0
После обновления Android Studio до версии 2.2 я также получил обновление для Gradle Plugin (это было 2.1.3):
...
classpath 'com.android.tools.build:gradle:2.2.0'
...
Я вижу файл APK без выравнивания, но другие варианты больше не генерируются. Я попытался включить выравнивание по zip:
buildTypes {
release {
minifyEnabled false
zipAlignEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release
}
debug {
applicationIdSuffix '.debug'
}
}
но ничего не меняется. Есть идеи?
Я "решил", возвращаясь к
classpath 'com.android.tools.build:gradle:2.1.3'
на уровне проектаbuild.gradle
.
РЕДАКТИРОВАТЬ (20160922):
Спасибо Фейдеру Флорезу за его ответ. Это правильно, среда сборки теперь выдает только один apk (https://code.google.com/p/android/issues/detail?id=212591).
Но с помощью кода (который переименовывает де выходное имя файла, используяVERSION CODE
а такжеVERSION NAME
):
android.applicationVariants.all { variant ->
variant.outputs.each { output ->
def padVersionCode = variant.versionCode.toString();
padVersionCode = padVersionCode.padLeft(5, '0')
def newApkName = "${output.baseName}_${padVersionCode}-${variant.versionName}"
if (!output.zipAlign)
newApkName = newApkName + "_unaligned"
newApkName = newApkName + ".apk"
output.outputFile = new File(output.outputFile.parent, newApkName)
}
}
Я получаю «_unaligned» добавленный к имени выходного файла, так что я предполагаю, чтоoutput.zipAlign
являетсяfalse
.
Так действительно ли выходной файл выровнен?
РЕДАКТИРОВАТЬ (20161013)
Благодаря окончанию 0421 и предлагаем проверить apk с помощью инструмента сборки:
zipalign -c -v 4 путь / имя_файла
СейчасЯ теперь, что APK генерируется правильно и команда zipalign syays:
Проверка успешна