前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Android Gradle 插件】AaptOptions 配置 ③ ( cruncherEnabled 配置 | cruncherProcesses 配置 )

【Android Gradle 插件】AaptOptions 配置 ③ ( cruncherEnabled 配置 | cruncherProcesses 配置 )

作者头像
韩曙亮
发布2023-03-30 15:17:05
1.6K0
发布2023-03-30 15:17:05
举报
文章被收录于专栏:韩曙亮的移动开发专栏

文章目录

Android Plugin DSL Reference 参考文档 :

一、AaptOptions#cruncherEnabled 配置


AaptOptions ( build.gradle#android#aaptOptions 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.AaptOptions.html

1、配置说明

AaptOptions#cruncherEnabled 配置 表示 是否开启 png 图片优化检查 , 默认为 true , 开启 png 图片优化检查 ;

AaptOptions#cruncherEnabled 配置原型 :

代码语言:javascript
复制
boolean cruncherEnabled
Returns true if the PNGs should be crunched, false otherwise.

2、使用示例

配置示例 :

代码语言:javascript
复制
android {
    compileSdkVersion 30
    buildToolsVersion "30.0.3"

    defaultConfig {
        applicationId "com.example.classloader_demo"
    }

    aaptOptions {
        // aapt 附加参数
        additionalParameters '--rename-manifest-package', 'com.example.classloader_demo2'
        // 是否开启 png 图片优化检查
        cruncherEnabled true
    }
}

3、测试效果

① 正面效果

测试 png 优化检查 效果 : 将 jpeg 格式的图片修改为 png 后缀 , 在 编译时 , 会进行优化检查 , 如果图片格式错误 , 会中断编译 , 报如下错误 :

代码语言:javascript
复制
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:mergeDebugResources'.
> A failure occurred while executing com.android.build.gradle.internal.res.Aapt2CompileRunnable
   > Android resource compilation failed
     ERROR:D:\002_Project\002_Android_Learn\ClassLoader_Demo\app\src\main\res\drawable\abc.png: AAPT: error: failed to read PNG signature: file does not start with PNG signature.
         
     ERROR:D:\002_Project\002_Android_Learn\ClassLoader_Demo\app\src\main\res\drawable\abc.png: AAPT: error: file failed to compile.
在这里插入图片描述
在这里插入图片描述

② 负面效果

如果将 AaptOptions#cruncherEnabled 配置 设置为 false , 即使 png 图片错误 , 也能编译成功 ;

代码语言:javascript
复制
android {
    compileSdkVersion 30
    buildToolsVersion "30.0.3"

    defaultConfig {
        applicationId "com.example.classloader_demo"
    }

    aaptOptions {
        // aapt 附加参数
        additionalParameters '--rename-manifest-package', 'com.example.classloader_demo2'
        // 是否开启 png 图片优化检查
        cruncherEnabled false
    }
}
在这里插入图片描述
在这里插入图片描述

二、AaptOptions#cruncherProcesses 配置


AaptOptions ( build.gradle#android#aaptOptions 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.AaptOptions.html

AaptOptions#cruncherProcesses 配置 : 获取要使用的 cruncher 进程数量 , 更多的 cruncher 进程会使得文件处理的更快 , 但是会占用更多的内存和 CPU ;

AaptOptions#cruncherProcesses 配置原型 :

代码语言:javascript
复制
int cruncherProcesses
Obtains the number of cruncher processes to use. More cruncher processes will crunch files faster, but will require more memory and CPU.

该配置一般不需要进行配置 ;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、AaptOptions#cruncherEnabled 配置
    • 1、配置说明
      • 2、使用示例
        • 3、测试效果
          • ① 正面效果
          • ② 负面效果
      • 二、AaptOptions#cruncherProcesses 配置
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档