【发布时间】:2016-12-09 13:44:53
【问题描述】:
我只是想知道是否有可能针对以下情况自定义 lint 检查:
Spannable text;
if(Build.VERSION.SDK_INT > Build.VERSION_CODE.N) {
text = Html.fromHtml(htmlString, Html.FROM_HTML_MODE_LEGACY, null, null);
} else {
text = Html.fromHtml(htmlString, null, null);
}
如果没有 if,Html.fromHtml(<4 params>) 将被指示为错误,因为它在 api 24 下不可用,但由于 if 条件,错误指示会自动被抑制。
关于 Html.fromHtml(<3 params>) 方法的弃用警告不会发生同样的事情。由于该方法(感谢 if)仅在未弃用的情况下执行,因此此警告是错误的。我必须手动抑制它。
有可能教 Lint 在这种情况下自动抑制弃用警告???
第二个问题,但已链接: 如果我在以下模式下更改之前的代码,lint 会继续将“newApi 方法”指示为错误。 有没有可能自动处理? 谢谢:
Spannable text = Build.VERSION.SDK_INT > Build.VERSION_CODE.N
? Html.fromHtml(htmlString, Html.FROM_HTML_MODE_LEGACY, null, null)
: Html.fromHtml(htmlString, null, null);
詹尼
【问题讨论】:
-
你试过注释@SuppressLint("NewApi")吗?
-
是的,我做到了,它有效。我要问的是一种永远教 Lint 自动处理这种情况而无需每次都添加 SuppressWarning 的方法!
标签: android android-studio backwards-compatibility android-lint