过滤Android工程中多余资源文件的解决方法

 更新时间:2014年07月21日 16:57:25   投稿:shichen2014  
这篇文章主要介绍了过滤Android工程中多余资源文件的解决方法,非常实用!需要的朋友可以参考下

本文以实例讲述了过滤Android工程中多余资源文件的解决方法,很有实用价值!具体描述如下:

很多开发人员在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
"
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实现View滑动的几种方式

    Android实现View滑动的几种方式

    Android中的View类是所有UI控件的基类(Base class),也就是说我们平时所有到的各种UI控件,比如Button、ImagView等等都继承自View类。这篇文章主要为大家详细介绍了Android实现View滑动的几种方式,需要的朋友可以参考下
    2016-04-04
  • Android编程实现的EditText弹出打开和关闭工具类

    Android编程实现的EditText弹出打开和关闭工具类

    这篇文章主要介绍了Android编程实现的EditText弹出打开和关闭工具类,涉及Android输入框EditText弹出打开和关闭功能简单实现技巧,需要的朋友可以参考下
    2018-02-02
  • Android五子棋游戏程序完整实例分析

    Android五子棋游戏程序完整实例分析

    这篇文章主要为大家分享了Android五子棋游戏程序完整实例,内容丰富,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-04-04
  • 2014值得推荐的10个移动 Web 应用程序开发框架

    2014值得推荐的10个移动 Web 应用程序开发框架

    今天这篇文章向大家推荐10大优秀的移动 Web 开发框架,帮助开发者更加高效的开发移动Web应用。
    2014-08-08
  • Android自定义水平渐变进度条

    Android自定义水平渐变进度条

    这篇文章主要为大家详细介绍了Android自定义水平渐变进度条,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-09-09
  • Android操作Html打开其他APP

    Android操作Html打开其他APP

    这篇文章主要为大家详细介绍了Android操作Html打开其他APP的相关资料,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • Android用代码获取手机root之后的最高权限

    Android用代码获取手机root之后的最高权限

    机得root之后通过代码可以获得最高权限如果没有root的话请不要往下看,毫无意义,root之后的朋友可以参考下本文或许有意想不到的收获
    2013-03-03
  • Android Scroller的使用方法

    Android Scroller的使用方法

    这篇文章主要为大家详细介绍了Android Scroller的使用方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • Kotlin协程的线程调度示例详解

    Kotlin协程的线程调度示例详解

    这篇文章主要为大家介绍了Kotlin协程的线程调度示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • Android实现摇一摇简单功能

    Android实现摇一摇简单功能

    这篇文章主要为大家详细介绍了Android实现摇一摇简单功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-03-03

最新评论