快速清除安卓res下无用资源,精简apk
来源:互联网 发布:c 定义json数组 编辑:程序博客网 时间:2024/04/30 05:06
由于我的操作方法是参考网上一篇原文研究的,尊重原创,首先贴出该地址:
http://www.cnblogs.com/angeldevil/p/3725358.html
但是遗憾的是这个文章虽然给出了方法,却没有给足够详细的操作步骤。
本人研究了一会走通了,把apk从12M降到了7M,下面写下我的实际的操作步骤以及注意事项,补充完善下了哈:
1.首先,最重要的是先把自己项目备份一下(免得出错无法还原,后面还有用);
2.打开cmd,进入你的SDK所在tools目录(因为lint.bat文件在这个目录下)
例如我的SDK在G:\workfiles\eclipse_adt\sdk\tools,则执行如下命令进入目录(可以直接复制路径,在命令行内输入“cd:”然后粘贴)
3.利用lint.bat工具检测没有被引用的资源:在命令行上继续执行如下命令(可直接复制,然后替换红色字体部分为自己项目所在的路径,即被检测的项目)
lint --check "UnusedResources" 你的项目所在路径 > result.txt
例如我的项目在G:\workfiles\android\android_projects\thinksns_xiniuhui_srb,则执行
可能会花一点时间,这个取决于你项目大小,运行完则会生成一个result.txt文件在你sdk--tools目录下;
这个文件下记录的就是你的代码中所有未引用的资源名称;
4.通过脚本清理你的项目:
在result.txt当前文件夹新建一个delete.java文件(可以下载链接我写好的,也可以自己新建delete.txt,复制以下代码,把红色部分改成自己的项目路径和SDK路径,然后修改扩展名为.java,最后 命令行输入 javac delete.java 编译,再java delete 执行就行了)
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
/**
* 类说明:
*
* @author Administrator
* @date 2015-5-21
* @version 1.0
*/
public class delete{
public static void main(String[] args) {
try {
String projectPath = "G:/workfiles/android/android_projects/thinksns_xiniuhui_srb";
BufferedReader reader = new BufferedReader(new FileReader(
"G:/workfiles/eclipse_adt/sdk/tools/result.txt"));
String line;
int count = 0;
while ((line = reader.readLine()) != null) {
if (line.contains("UnusedResources")
&& !line.contains("res/value")
&& !line.contains("appcompat")) {
count++;
int end = line.indexOf(":");
if (end != -1) {
String file = line.substring(0, end);
String f = projectPath + file;
System.out.println(f);
new File(f).delete();
}
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
5.最后需要注意的可能代码会删除你values下的某些文件,这时候会导致你的代码无法编译,你只需要把之前备份的文件复制到项目下就ok了,运行下看apk是否变小了呢
- 快速清除安卓res下无用资源,精简apk
- 快速清除Andorid项目中无用资源
- android studio 清除无用资源,缩减apk大小!
- Android 清除无用资源
- 无用资源清除
- AndroidStudio清除无用的资源
- 安卓res资源混淆器
- Android framework-res.apk资源
- apk清除冗余资源
- Android Lint清除无用的资源文件
- Android Studio 清除项目无用资源
- android studio 一键清除无用资源
- Android studio 清除无用资源引用
- AndroidStudio 清除无用资源压缩项目大小
- Android版本迭代清除无用资源
- Android Studio 清除项目无用资源
- 如何快速清除无用的css
- apk打包时去除无用资源
- VB.net 注册表操作API
- 基于CodeBook的背景差分算法(C++)
- codeforces-230B T-primes
- 注册界面验证
- 私塾在线《深入浅出学 Hadoop- 初级 部分》
- 快速清除安卓res下无用资源,精简apk
- GridView
- Mina框架的学习笔记——Android客户端的实现 - cpacm
- ThinkPHP支持MongoDb Aggregate方法聚合管道
- jsp页码通过href标签传中文参数
- 这就是Thinkpad S1 yoga 20CD-A06SCD问题
- 动态的获取ios键盘的高度
- 上海的it环境怎样,打算去上海看看
- windows 蓝牙开源工具包分析及C#实例