android - Gradle 为每个资源文件夹构建

标签 android gradle build.gradle

是否可以配置 Gradle 以构建几个 android apk 文件,每个文件只使用一个资源类型文件夹?

我的意思是:

  • build-hdpi.apk
  • build-mdpi.apk
  • build-xhdpi.apk

我知道我可以在构建之前简单地删除某些文件夹,但如果我可以“自动”创建它就更好了。

是否可以使用 gradle “flavors”?

最佳答案

现在我们也可以使用api splits http://tools.android.com/tech-docs/new-build-system/user-guide/apk-splits

示例来自文档链接:

android {
    ...
    splits {
        density {
        enable true
        exclude "ldpi", "tvdpi", "xxxhdpi"
       compatibleScreens 'small', 'normal', 'large', 'xlarge'
     }
}
  • enable: 启用密度 split 机制
  • exclude:默认包含所有密度,您可以移除部分密度。
  • include:指明要包含哪些密度
  • reset():将要包含的密度列表重置为空字符串(这允许与 include 一起指示使用哪个而不是忽略哪个)
  • compatibleScreens:表示兼容屏幕列表。这将在 list 中注入(inject)一个匹配的节点。这是可选的。

AOSP 中的示例:https://android.googlesource.com/platform/tools/base/+/2101d189d85dd46f865726b9b7aa0012832a6d9c/build-system/tests/regular/densitySplit/build.gradle

关于android - Gradle 为每个资源文件夹构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20599840/

相关文章:

android - 需要在计时器上获取其他值

gradle - Gradle中的相对项目依赖项?

android - 即使我的过程正确,也无法解析github依赖关系

带有封装项目的 Android 项目

gradle - 更改gradle确定一个版本高于另一个版本的方式

android - 在 Android 中运行 ffmpeg 命令会为图像路径提供 Protocol not found 错误

android - IAB 助手。 queryInventoryAsync 未返回任何购买,但启动产品流程失败并显示 "Item Already Owned"

android - 如何在android中通过代码更改通知声音?

gradle - 使用 cucumber 特征文件的标签通过命令行执行 gradle 项目的 cucumber 测试

windows - Android Studio Gradle 构建错误 : Read Time Out