Android Studio/gradle:为android自动调整图像大小

Den*_*ich 6 android image gradle android-studio

我使用的是Android StudioGradle.

我想知道是否有任何方法可以在构建时自动调整不同分辨率的图像大小.我的意思是有一组图像,并自动调整到不同的分辨率(例如xxhdpi,xhdpi,hdpi,mdpi,ldpi)

完美的解决方案是拥有一些gradle插件,可以配置为在构建之前在适当的文件夹中生成调整大小的图像 apk

Aur*_*rel 1

我开发了一个 gradle 插件,可以做到这一点(基于 imagemagick)

首先,您需要将插件添加到构建脚本中:

buildscript {
  repositories {
    mavenCentral()
  }

  dependencies {
    classpath 'com.eowise:gradle-imagemagick:0.4.0'
  }
}
Run Code Online (Sandbox Code Playgroud)

然后,为每个尺寸添加一个任务:

[
        [ variant: 'mdpi', size: '33%' ],
        [ variant: 'hdpi', size: '50%' ],
        [ variant: 'xhdpi', size: '66%' ],
        [ variant: 'xxhdpi', size: '100%' ]
].each {
    item ->
        task("buildIcons${item.variant.capitalize()}", type: com.eowise.imagemagick.tasks.Magick) {
            convert 'resources/images', { include '*.png' }
            into "app/src/main/res/drawable-${item.variant}"
            actions {
                -background('none')
                inputFile()
                -resize(item.size)
                outputFile()
            }
        }
}
Run Code Online (Sandbox Code Playgroud)

您可以在GitHub上的wiki 页面上找到有关如何使用此插件的更多信息。