Android资源混淆打包工具

首先我们对resources.arsc的文件格式有一定的了解。resources.arsc一共有5种chunk类型,分别为TYPETABLE,TYPEPACKAGE,TYPE_STRING,TYPE_TYPE,TYPECONFIG。

--table,使整个reousces table的开始,它的chunksize即是整个文件的大小。

--package,指的是一个package的开始,其实在resources.arsc是可以有多个package的。而packageID即是资源resID的最高八位,一般来说Android系统的是1(0x01),普通的例如com.tencent.mm可能会是127(0x7f),剩下的是从2开始起步。当然这个我们在aapt也是可以指定的(1-127即八位的合法空间,一些混合编译就是改变这个packageID)。

--string,代表stringblock,我们一共有三种类型的stringblock。分别是table stringblock,typename stringblock,specaname stringblock。

--type,这里讲的是typename stringblock里面我们用到的各种type(用到多少种类型的type就有多少个type chunk),例如attr,drawable,layout,id,color,anim等,Type ID是紧跟着Package ID。

--config,即是Android用来描述资源维度,例如横竖屏,屏幕密度,语言等。对于每一种type,它定义了多少种config,它后面就紧跟着多少个config chunk,例如我们定义了drawable-mdpi,drawable-hdpi,那后面就会有两个config。

--entry,尽管没有entry这个chunk,但每个config里面都会有很多个entry,例如drawable-mdpi中icon1.png和icon2.png两个drawable,那在mdpi这个config中就存在两个entry。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 安装包的性能优化的精髓:尽量删。安装包的性能优化方法: 1.图片压缩 图片:apk里面的资源图片 压缩图片svg图...
    香沙小熊阅读 5,359评论 0 5
  • Apk中的resources.arsc是aapt工具编译资源时生成的一个重要文件。App资源能根据配置的变化,索引...
    小爨阅读 21,333评论 4 44
  • 安装包的瘦身 常用的方式: 1.图片压缩 图片:apk里面的资源图片 压缩图片 1) svg图片:一些图片的描述,...
    zsj1225阅读 3,408评论 0 5
  • 插件化-资源处理 写的比较长,可以选择跳过前面2节,直接从0x03实例分析开始。如有错误,请不吝指正。 0x00 ...
    唐一川阅读 10,907评论 2 22
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,833评论 19 139

友情链接更多精彩内容