• Android资源混淆打包工具

    发布:51Code 时间: 2017-03-29 09:44

  • 首先我们对resources.arsc的文件格式有一定的了解。resources.arsc一共有5种chunk类型,分别为TYPETABLE,TYPEPACKAGE,TYPE_STRING,TYPE_TYPE,TYPECONFIG。 --table,使整个reousces table的开始,它的chunksiz...

  • 首先我们对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。

  • 上一篇:小博老师浅谈Context(一)

    下一篇:Android异步下载网络图片

网站导航
Copyright(C)51Code软件开发网 2003-2018 , 沪ICP备16012939号-1