过滤Android工程中多余的资源文件
来源:互联网 发布:遵义广电网络收费标准 编辑:程序博客网 时间:2024/05/29 11:59
(欢迎访问:http://www.3body.tk/iblog/)
在Android项目开发过程中经常会遇到这样的情况:界面开发人员发布了一个新版本的资源包,不过有的图片名称改了,有的图片删掉了,可是在实现的时候开发人员只是把新的资源覆盖到原来的资源文件夹中,随着版本的发布,在drawable或values中积累的无用资源越来越多,直到最后发布正式版的时候再想要删除这些多余的文件,于是不得不一个一个文件检查看是否有用,再决定要不要删除之。
那能不能将这个检测过程自动化呢,对于无所不能的程序猿们来说这是必须地~
处理这一类问题大家首先想到的应该就是shell脚本,下面是一段使用shell脚本来自动检测文件有没有用到,并实现自动删除没有用到的文件的功能:
#!/bin/sh resfile=result.txt #drawdir=res/layout drawdir=res/drawable-hdpi tmpdrawfile="tmpdraw.txt" #clear tmp file echo "" > $tmpdrawfile echo "" > $resfile ls $drawdir > $tmpdrawfile #ls $tmpdrawfile cat $tmpdrawfile | while read line do filename=`echo $line | sed 's/..*//'` #echo $filename #start to search grepMode=@drawable/$filename" grepDir=./res #grepMode=R.layout.$filename #grepDir=./com result=`grep -r $grepMode $grepDir` if [ "$result" == "" ] then echo $line echo $line >> $resfile rm -f $drawdir/$line #else # echo "----------------" fi done rm -f $tmpdrawfile
上面的代码很简单,首先将drawable(或者你可以改成任意目录)下的所有文件列出来,然后在整个目录中遍历,对每个文件检测有没有‘@drawable/$filename’这种格式的用法(你可以自己改成任意格式),如果没有使用到的话,就将文件删除。使用的时候需要将这个脚本放在跟res同级的目录。
这段代码也可以用在其他任何需要检测出未使用/已使用文件的地方,只要将对应的目录和匹配模式修改一下就可以了,或者如果为了通用,可以将所有配置写在一个配置文件,也可以将配置作为参数传递进去。
- 过滤Android工程中多余的资源文件
- 过滤Android工程中多余的资源文件
- 过滤Android工程中多余的资源文件
- 过滤Android工程中多余的资源文件
- Android Studio清理多余的资源文件
- Android清除工程中无用的资源文件
- 如何过滤多余的cpu支持文件
- Android 如何找出项目中无用多余的资源
- 利用python自动清除Android工程中的多余资源
- Android工程中R.java文件的重新生成——注意资源文件的错误
- Android工程中R.java文件的重新生成——(注意资源文件的错误)
- Android工程中R.java文件的重新生成——注意资源文件的错误
- Android工程依赖:android中打包含有Activity以及资源文件的jar包在工程中调用
- Android工程依赖:android中打包含有Activity以及资源文件的jar包在工程中调用
- Android工程依赖:android中打包带有Activity以及资源文件的jar包在工程中调用
- Android工程依赖:android中打包带有Activity以及资源文件的jar包在工程中调用
- 过滤多余的空格
- android中打包含有Activity以及资源文件的jar包在工程中调用
- 降权?面对自己的内心
- 阻止Spy++之类的工具捕捉软件窗口
- 【人在运维囧途_04】 逃离故障的十条运维工作经验总结
- 单片机驱动DM9000网卡芯片
- Python装饰器与面向切面编程
- 过滤Android工程中多余的资源文件
- UVA 11389 The Bus Driver Problem(贪心)
- JAVA接口与多态
- SQL语法 TOP
- wireshark提供的一组API以供抓包和包分析
- 双击startup.bat启动tomcate时,一闪而过然后消失了
- ORACLE 11R2 安装过程。
- Handler
- eclipse无法正常启动解决方案