AndroidLint警告提示速查手册

安卓开发中有个很好的静态代码分析工具AndroidLint(已集成在AndroidStudio中),当你代码写的差不多准备打包发布的时候可以用Lint检查一遍代码,Lint会向你报告你的代码中可以进一步优化的地方。

本文不打算详细讲述Lint的用法,写这篇文章的目的是希望能给经验不足的新手们提供一个Lint警告信息速查手册,以快速明白Lint中常见的警告信息含义。本文会保持频繁更新!

Android > Lint > Accessibility

1.Image without contentDescription

[Accessibility] Missing 'contentDescription' attribute on image
contentDescription 这个属性是为了给一些生理功能有缺陷的人使用应用程序提供方便的,比如有一个 ImageView 里面放置一张色彩丰富的图片,一些色弱色盲的人可能会分不清这张图片中画的是什么东西。如果用户安装了辅助浏览工具比如 TalkBack,TalkBack 就会大声朗读出用户目前正在浏览的内容。TextView控件TalkBack可以直接读出里面的内容,但是 ImageView TalkBack就只能去读 contentDescription的值,告诉用户这个图片到底是什么。

Android > Lint > Correctness

1.Layout Inflation without a Parent

Avoid passing 'null' as the view root (needed to resolve layout parameters on the inflated layout's root element)
出现这条警告你肯定使用 LayoutInflater 类的方法加载布局了,具体缘由请查看这篇博文

2.Missing commit() on SharedPreference editor

'SharedPreferences.edit()' without a corresponding 'commit()' or 'apply()' call
一般是因为你执行了 SharedPreference.Editor 的 put 方法然后忘了执行 apply 或 commit 方法。

3.Using inlined constants on older versions

这个是因为你调用的比你声明的 minSdkVersion 级别更高的 API.

Android > Lint > Internationalization > Bidirectional Text

1.Using left/right instead of start/end attributes

这条警告建议你将布局文件(多为相对布局)中声明的 ×××Left 或 ×××Right 替换成对应的 ×××Start 或 ×××End 以兼容从右至左的屏幕方向(这个取决于特定语境的阅读习惯)。

Android > Lint > Performance

1.Overdraw: Painting regions more than once

直译过来叫过度绘制,你应该明确当前的 subView 是否有覆盖上一级 View 的需求,如果有可忽略此条提示

2.Unused resources

这个不用我过多解释了吧,提示你项目里未使用的资源文件,请酌情删除。

Android > Lint > Security

待续…………

Android > Lint > Usability

Using setJavaScriptEnabled
Using 'setJavaScriptEnabled' can introduce XSS vulnerabilities into your application, review carefully.
使用'setJavaScriptEnabled'可以将XSS漏洞引入到应用程序中,请仔细检查确定有打开 JS 的必要。
嗯,一般用到 WebView 的地方都有必要打开 JS 支持。
待续…………

Android > Lint > Usability > Icons

1.Image defined in density-independent drawable folder

在密度无关的可绘制文件夹中定义的图像,我一般选择忽略,原因改天专门开篇文章解释。

Class structure

提示你类的结构可进一步优化的地方。

1.Field can be local

这个主要是有些变量可声明为局部变量。

2.'private' method declared 'final'

这个一般删掉 final 符就行。

Control flow issues

1.Unnecessary 'return' statement

不必要的 return 语句,这个一般是你在返回类型为 void 的方法的方法体内使用了 return 语句,到底有没有必要使用要视情况而定。比如你想在方法中加个条件判断,如果不符合条件就提前返回方法,这个时候返回 void 类型的方法里使用 return 语句是有必要的。

Declaration redundancy

1.Actual method parameter is the same constant

某个方法的某个参数在整个项目里被调用的地方总是个固定不变的值,所以这个形参是否有声明的必要呢?

2.Declaration access can be weaker

提示你类中的字段或方法声明的访问权限可优化。详细部分一般提示 Can be private,嗯。

3.Declaration can have final modifier

某类的某个字段可声明为 常量 即添加 final 修饰符。

4.Method returns the same value

此提示常出现于创建菜单以及菜单的选择点击回调方法处,使返回父类的方法调用即可。

General

1.Default File Template Usage

这个你自己肯定能看懂,我就不说了。

Imports

一般提示你一些未使用的导入语句,删掉就好。(右键可快速删掉)

Java language level migration aids

一些 JAVA 语言相关的优化建议。

Spelling

嗯。

……
……
未完待续……

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

推荐阅读更多精彩内容