Inspect Code功能

1. 使用的是Android Studio工具做代码审查(Inspect Code功能), 实际上使用到的是其中Android Lint部分

2. Inspect Code配置(可以单独选择Module 'app'部分, 个人感觉library部分审查的意义不大. 不过为了方便,我还是选择了 Whole project... 不过这样的结果就是, 同事的红点键盘电脑还没有Inspect完... 我已经把150多个无效资源全部处理完了... 所以还是自行决定是否Fire The Whole吧...)

******** 第三部分: Android Studio Inspect Code 结果简介 ********

zzzZZZ(Inspecting...)

1. 既然是瘦身, 那无效资源引用就是头等重要的事了. 个人觉得这部分都在Inpsection模块的Android Lint视图里面了.

首先,在Inspection模块里找到Android Lint

然后, 在Inspection模块的Android Lint里向下滑动找到Ununsed resources

来, 看一下Unused recources展开后的样子(对不起, 重复图片, 无效xml文件, 无效的strings.xml和dimens.xml都已经处理完了)...

(   说一下一个我自己的处理"技巧"吧, 对于无效的xml文件, 要删除起来其实还比较麻烦, 因为Android Studio在xml页面好像没有删除按钮??? 我是这么做的:

在Inspect Code 的Android List结果展示区, 双击对应的xml无效提示(例如: The resource 'R.dimen.spacing_0_5' appears to be unused这一个item),

进入对应的xml文件后, 把所有内容删除... 不要怕... 错了git可以恢复的...

当你删除的手酸的时候或者内心惶恐不安的时候, 在Android Studio里Clean一下工程[不懂的谷歌搜索: Android Studio Clean 工程...]

之后在Android Studio工程里遍历所有的xml文件, 对于没有内容的xml文件, Android Studio会用红色的波浪线提示, 然后选中所有需要删除的xml文件, 一次性删除... 建议带上引用审查)

安全删除之引用审查

(说一下一个坑吧... 事情的起因是这样的:android.content.res.Resources$NotFoundException

Android Lint信誓旦旦的说, R.dimen.spacing_0_5是没用的(实际上他的名字是R.dimen.spacing_0.5...) 后删之, 保留了values-1280x720目录下diemns.xml里的R.dimen.spacing_0.5定义...

这样看起来应该出现在分辨率为1280x720的HTC D816V完美不崩溃而其他分辨率可能崩溃的情况... 然而HTC D816V表示不服, 打开APP后崩溃,遂伙同Android Studio提示单身程序狗: Caused by: android.content.res.Resources$NotFoundException: File res/drawable/common_btn_grayf10.xml from drawable resource ID #0x7f0a0018

我找了一下, common_btn_grayf10.xml确实存在... HTC你"眼瞎"是不是!!! 还是Android Studio聪明, 在xml预览图里无预览, 但是提示spacing_0.5 not in right format... 于是将spacing_0.5修改为spacing_1, 错误提示不记得在不在了, 但是程序依旧崩溃... 查了很久后, 尝试将spacing_0.5也放到values/dimens.xml里试试... 结果崩溃问题解决...

总结:在做适配的时候, 一定要保证values/dimens.xml文件是最大而全的.就是说values/dimens.xml = values-aaxbb U values-ccxdd U etc... 这里U是离散数学里的取并集的意思(打我吧... 很罗嗦对不对)

)

2. 实际上Android Studio的Inspect Code还蛮强大的, 会帮你审查无效的LinearLayout, xml布局里View过多, onDraw()函数中分配内存这一类的效率问题.  举一个Code style的例子(实在无语了有没有!)

代码里是这么写的:

Intent intent = getIntent();

if (null != intent) {

goToMainPageFlag = intent.getBooleanExtra(KEY_GO_TO_MAIN_PAGE_FLAG, false);

} else {

goToMainPageFlag = false;

}

Inspect Code提示:

就是说, Android Studio的Inspect Code告诉你, 你的代码一点都不优雅... 应该改成酱:

Intent intent = getIntent();

goToMainPageFlag = (null != intent && intent.getBooleanExtra(KEY_GO_TO_MAIN_PAGE_FLAG, false));

结论: 把六行的代码改成两行, 确实是一个很好的Code Style实践有没有! 是的, Android Studio的Inspect Code功能我也是第一次用, 里面东西实在太多了, 大大小小事无巨细的,没事儿多看看长长见识也是极好的... 虽然有时候你可能不能在短时间内一下子把所有选项优化完, 不过多看才会有优化的意识, 在之后的Code实践里就会逐渐的靠近最佳实践. (完)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 221,273评论 6 515
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,349评论 3 398
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 167,709评论 0 360
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,520评论 1 296
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,515评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,158评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,755评论 3 421
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,660评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,203评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,287评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,427评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,122评论 5 349
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,801评论 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,272评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,393评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,808评论 3 376
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,440评论 2 359

推荐阅读更多精彩内容