android优化 清除无效代码 UCDetector
android下优化 清除无效 未被使用的 代码 UCDetector
UCDetector 是 eclipse 工具 能够审查出程序中 未被使用的、 冗余的、 变量不规范 的代码
须要注意:
反射 、在xml中配置注入方式、第三方project的应用 、jar包调用
等 须要自己手工推断
建议删除类的时候 先全局搜索一下 推断有无其他地方调用 eclipse全局搜索快捷键 (windows : ctrl+G 、 mac: control+G )
我使用的版本号是 org.ucdetector_1.10.0.jar
下载地址 : http://download.csdn.net/detail/aaawqqq/8851445
(一)安装
将下载好的jar 包 放入eclipse 目录中 放置在\eclipse\dropins目录下,之后重新启动eclipse就可以
如图:
(二)执行使用
安装完毕之后 打开eclipse
操作流程例如以下: 右击project → 选中UCDetector → 选择 Detect unnecessary code 然后等待执行
(假设项目比較大 执行时间可能会有点长)
如图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFhd3FxcQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
(三)执行结果
执行结果的报告会生成在 当前 eclipse 打开的 workspace 的目录 ucdetector_reports 中
ucdetector_reports 目录中会有2个文件
执行结果另一处显示在 eclipse 的 problem 里面
如图:
(四)筛选
为了方便查找 对 problem 中的结果进行筛选 分类
选择 倒三角 → 弹窗 → Group By → Type
如图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFhd3FxcQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
(五)优化
依据提示 找到相相应的类 进行删除
比例如以下图中的 类 BaseActivity
如图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYWFhd3FxcQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
双击problem中的条目进入对应的类 :
(六)结束
插件使用要注意:
反射 、在xml中配置注入方式、第三方project的应用 、jar包调用 等 须要自己手工推断
建议删除类的时候 先全局搜索一下 推断有无其他地方调用 eclipse全局搜索快捷键 (windows : ctrl+G
、 mac: control+G )
附上參考资料:
lint 分类及常见错误
http://mikewang.blog.51cto.com/3826268/1003276
http://blog.csdn.net/qbg19881206/article/details/8757026
附上神兽一仅仅 祝大家每日精进
//┏┓ ┏┓
//┏┛┻━━━┛┻┓
//┃ ┃
//┃ ━ ┃
//┃ ┳┛ ┗┳ ┃
//┃ ┃
//┃ ┻ ┃
//┃ ┃
//┗━┓ ┏━┛
// ┃ ┃ 神兽保佑
// ┃ ┃ 代码无BUG! // ┃ ┗━━━┓
// ┃ ┣┓
// ┃ ┏┛
// ┗┓┓┏━┳┓┏┛
// ┃┫┫ ┃┫┫
// ┗┻┛ ┗┻┛
下篇 Android 资源文件优化 Android lint的使用
android优化 清除无效代码 UCDetector的更多相关文章
- [Android] Android开发优化之——从代码角度进行优化
通常我们写程序,都是在项目计划的压力下完成的,此时完成的代码可以完成具体业务逻辑,但是性能不一定是最优化的.一般来说,优秀的程序员在写完代码之后都会不断的对代码进行重构.重构的好处有很多,其中一点,就 ...
- android 通过eclipse混淆代码 打包 + proguard 总结
android应用程序的混淆打包 1 . 在工程文件project.properties中加入下proguard.config=proguard.cfg , 如下所示: target=android- ...
- Android 优化APP 构建速度的17条建议
转载:http://www.jianshu.com/p/a1cc8f2e0877 较长的构建时间将会减缓项目的开发进度,特别是对于大型的项目,app的构建时间长则十几分钟,短则几分钟,长的构建时间已经 ...
- 浅谈Android保护技术__代码混淆
浅谈Android保护技术__代码混淆 代码混淆 代码混淆(Obfuscated code)亦称花指令,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为.将代码中的各种元 ...
- Android ------ 美团的Lint代码检查实践
概述 Lint是Google提供的Android静态代码检查工具,可以扫描并发现代码中潜在的问题,提醒开发人员及早修正,提高代码质量.除了Android原生提供的几百个Lint规则,还可以开发自定义L ...
- (转载) Android 带清除功能的输入框控件ClearEditText,仿IOS的输入框
Android 带清除功能的输入框控件ClearEditText,仿IOS的输入框 标签: Android清除功能EditText仿IOS的输入框 2013-09-04 17:33 70865人阅读 ...
- Android Studio(十一):代码混淆及打包apk
Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...
- CssStats – 分析和优化网站 CSS 代码的利器
CssStats 是一个在线的 CSS 代码分析工具,你只需要输入网址或者直接 CSS 地址即可进行 CSS 代码的全方位分析,是前端开发人员和网页设计师分析网站 CSS 代码的利器,可以统计出 CS ...
- Web程序员开发App系列 - 调试Android和IOS手机代码(补图)
Web程序员开发App系列 Web程序员开发App系列 - 认识HBuilder Web程序员开发App系列 - 申请苹果开发者账号 Web程序员开发App系列 - 调试Android和iOS手机代码 ...
随机推荐
- Swift 3 关于Date的一些操作
前言 最近在写关于日期的一些操作,所以整理了一下这方面的一些知识 本Demo使用的是playground. 我们以前使用的都是NSDate类进行日期的操作,在Swift 3.0中,我们就可以使用更加S ...
- Ajax+Java实现大文件切割上传
技术体系:html5(formdata) + java + servlet3.0+maven + tomcat7 <!DOCTYPE html> <html> <head ...
- mvc中Html.AntiForgeryToken的作用和用法
参考:http://blog.csdn.net/cpytiger/article/details/8781457
- error:informix Unable to load translation shared library 解决方案
错误:设置informix ODBC时“error:informix Unable to load translation shared library ” 原因 INFORMIXDIR环境变量在操作 ...
- 利用JavaScript的%读分秒
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 解决java float double 浮点型参与计算失精度
本人前段时间做一个社区电商应用,发现了一个 天坑 ...................让我哭会 . 下面听听我的踩坑之路吧 ,电商肯定跟¥打交道了,计算少不了的.由于本人太菜 单纯的以为 fl ...
- ubuntu16 mysql 远程连接
打开配置文件: sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 将下面一行注释掉: # bind-address = localhost 重启服务 sudo s ...
- matplotlib简介-高质量图形输出
Matplotlib 是一个用来绘制二维图形的 Python 模块,它克隆了许多 Matlab 中的函数, 用以帮助 Python 用户轻松获得高质量(达到出版水平)的二维图形. 文章来源:http: ...
- 定时器篇---java.util.TimerTask和quartz
最近项目中出现了定时执行任务的东西,研究了一下,觉得挺不错的,以后还用得到,就总结了下. 这里只介绍两种java.util.Timer 和 quartz java.util.Timer java自带的 ...
- python 整型,布尔值,字符串相关
1.整型(int) 就是所有整数, 2.布尔值(bool) True False 0,"",[],{},(),none为False 3.字符串(str) 字符: 是单一文字符号 字 ...