问题标签 [android-lint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
633 浏览

android - 自定义 Lint 规则:如何处理修复按钮单击

我按照教程进行操作,它对我来说非常完美。现在我想添加修复问题功能。我正在使用 Eclipse。

Lint 警告视图中,我们有修复按钮,我可以处理它吗?

例如,当您单击CTRL + 1时,我们在TextView中有硬编码字符串( android:text="Test"),帮助弹出窗口可能会打开Extract String。我想要做的是添加提取硬编码 dp 值功能。

如果你能指出我在哪里可以找到已经实现的 lint 问题的源代码,那也很棒。

谢谢你。

0 投票
1 回答
272 浏览

android - Android XML Style/Theme版本兼容性,考虑Eclipse/lint开发安全

似乎当今开发 Android 应用程序的最佳方法是在 project.properties 中定位 android-17,在清单中定位 minSdkVersion "whateversuitsyou" 和 targetSdkVersion 17。

在此配置中,标准 lint 检查将通知仅在“whateversuitsyou”以上的 API 版本中可用的任何 API 调用,并且可以使用反射等动态支持更新的功能(如果有)。

但是,在此设置中,至少无需进一步配置,XML 中的样式和主题属性可能不会放在适当的文件夹中,例如当“whateversuitsyou”小于 11 时引用默认资源文件夹中的“Holo”元素又名蜂巢。

如果应用程序遇到未知的 XML 样式属性,它们似乎不会崩溃。LogCat 将显示错误,例如“样式包含输入错误的键”。

不确定是否在应用启动时检查了整个样式;如果是这样,当然可以在每个 API 版本上运行一次应用程序以检查是否存在任何问题。然而,这并不是完全可取的。此外,样式和主题并不是唯一的版本特定资源。

有没有办法让 lint 针对文件夹 *-vXY 的 minSdkVersion 和 API 版本 XY 检查资源?有人可以对此有所了解吗?

0 投票
1 回答
502 浏览

android - Lint:“<key> 没有被翻译成“ 错误

我的 Android 应用程序最近在编译时开始抛出 Lint 错误。我得到<key> is not translated in <language>.它告诉我If an application has more than one locale, then all the strings declared in one language should also be translated in all other languages.

与有关此主题的其他一些类似问题不同,我目前仅支持一种语言环境。Eclipse 不知何故开始认为我想支持多个,现在编译时抛出错误。是的,我可以在构建时关闭 lint 检查,或者我可以将其设置为警告而不是致命错误,但这只是隐藏了问题,即 Eclipse 认为有多个语言环境。我该如何解决?

编辑:我追踪了源代码 - 我添加了一个包含 values-da 文件夹的库项目。有什么方法可以让我的应用程序的其余部分忽略该文件夹,还是我必须删除它?

0 投票
3 回答
8053 浏览

android - Android Lint 限制语言以检查缺失的翻译

我的应用程序仅支持 2 种语言 - 英语和德语。所以我有这样的语言字符串文件夹结构:

我的项目/res/values/strings.xml

myproject/res/values-de/strings.xml

当我运行 Lint 检查时,我收到许多关于缺少语言的警告,我的应用程序不需要支持:

"some_string" 不翻译为 af, am, ar, be, bg, ca, cs, da, el, en-rGB, es, es-rUS, et, fa, fi, fr, hi, hr, hu, in , 它, iw, ja, ko, lt, lv, ms, nb, nl, pl, pt, pt-rPT, ro, ru, sk, sl, sr, sv, sw, th, tl, tr, uk, vi , zh-rCN, zh-rTW, zu

此警告使您很难理解哪些字符串未翻译成德语。我必须查看每个警告并搜索“de”符号以了解该字符串没有翻译成德语。

所以我的问题很简单——我怎样才能告诉 Lint 只检查 2 种语言

0 投票
3 回答
9060 浏览

android - 导出已签名应用程序期间出现致命的 Lint 错误

我正在尝试导出已签名的 android 应用程序,但遇到了以下 lint 错误:

在此处输入图像描述

当我进入 xml 查看它时,会发生这种情况:

在此处输入图像描述

有没有办法解决这个问题,以便我可以继续签署应用程序?我不需要翻译它们,因为无论如何它都是英文的。

0 投票
3 回答
1356 浏览

android - 每次我进行一些更改时,都会出现 android lint 错误......为什么会这样?

我在eclipse中使用robotium工具来创建测试用例。我的疑问是每次我对任何文件进行任何更改时都会出现错误,例如

当我右键单击项目然后android工具->清除lint标记时,所有这些错误都会消失。但我不明白为什么在文件中进行任何更改时会出现这样的lint错误?这些lint错误的原因是什么。

0 投票
1 回答
369 浏览

android - 从 ADT 生成的 lint.xml 的问题

我在一个具有多平台环境的团队中工作,我们在生成的 lint.xml 文件中遇到了一些问题。这个文件也被我们在 Mac OS X 上运行的 Jenkins 构建系统使用(它必须是 Mac,因为这个系统将用于构建 Android 和 iOS 应用程序)。

问题是,我们需要忽略对 libs 文件夹中特定文件的 Lint 检查。当我在 Windows 中执行此操作时,我得到了他的:<ignore path="libs\FlurryAgent.jar" />但是在 Mac 上使用 Jenkins 运行的 Lint 不理解反斜杠,它会忽略 lint.xml 文件。不好...

我们将反斜杠更改为正斜杠,现在它可以在 Mac 上运行。但后来它停止在我的 Windows 机器上工作,它不理解正斜杠。

有没有办法让正斜杠在两个系统中都工作而不会一直弄乱斜杠?

0 投票
4 回答
29456 浏览

java - 使用 FloatMath 或 Math 和演员表?

在 Android API 的最新更新中,FloatMath标记有以下 lint-warning:

在旧版本的 Android 中,出于性能考虑,建议在浮点数上使用 android.util.FloatMath。然而,在现代硬件上,double 与 float 一样快(尽管它们占用更多内存),并且在最新版本的 Android 中,由于 JIT 优化 java.lang.Math 的方式,FloatMath 实际上比使用 java.lang.Math 慢. 因此,如果您只针对 Froyo 及更高版本,则应使用 Math 而不是 FloatMath。

这里还提到,double 和 float 在最近的硬件上速度相等。

我在我目前正在处理的应用程序中使用了一些三角数学(针对 Froyo 及更高版本),但不需要高精度,FloatMath所以到目前为止我一直在使用浮点数,并且不需要切换到双精度数。
但是,“use Mathover FloatMath”-recommendation 并没有说明如果 float 是所需的结果,则使用哪一个。

所以,简而言之;哪个更可取?

或者

顺便说一句,我只有一个 Froyo 设备,所以我不能自己做任何适当的基准测试。

从 API 级别 22 开始,FloatMath 类已被弃用,取而代之的是常规的 Math 类。

0 投票
1 回答
154 浏览

android - 仅限 Android Drawable XHDPI - 避免 lint 警告

在我的项目中,我有仅用于平板电脑的可绘制对象。因此,如果我将图像放在 XHDPI 上,lint 会抱怨图像也应该在其他维度上。在这种情况下,忽略 lint 是最好的方法吗?

0 投票
2 回答
2304 浏览

android - 在布局文件中隐藏警告

我更新了 Eclipse 和 SDK,现在在每个 xml 文件中,TextViews 都有警告“考虑通过指定 android:textIsSelectable="true" 来选择文本值”。

是否可以隐藏警告,我讨厌让我的项目带有很多黄色感叹号。