Articles of lint

调用需要API级别11(当前最小为9)android.app.Activity#onCreateView

在SDK更新(23)后,我得到这个lint错误,我没有在我的代码中做任何改变,它在api级别9的设备上工作正常。另外,我不调用android.app.Activity#onCreateView我的代码。 如果我点击自动修复,它将@SuppressLint(“NewApi”)放到类的声明@SuppressLint("NewApi") public class MyActivity extends android.support.v4.app.FragmentActivity像这样,错误消失,我要确定这是否是要走的路。

如何禁用已弃用Androidfunction的特定Lint警告?

我使用版本切换来支持较旧的Android版本。 int sdk = Build.VERSION.SDK_INT; if (sdk < Build.VERSION_CODES.HONEYCOMB) { ColorDrawable colorDrawable = new ColorDrawable(shapeColor); //noinspection deprecation viewHolder.shape.setBackgroundDrawable(colorDrawable); } else { viewHolder.shape.setColor(shapeColor); } 当从命令行使用Gradle构build项目时,Lint会输出以下警告: app/src/main/java/com/example/MyApp/CustomListAdapter.java:92: warning: [deprecation] setBackgroundDrawable(Drawable) in View has been deprecated viewHolder.shape.setBackgroundDrawable(colorDrawable); ^ 我可以注释特定的线或方法来使警告静音(因为我故意这样做)? 我不想禁用所有的警告。

Android Lint是什么意思:“错误的定位?”

我在eclipse中运行Android lint并得到一个错误: 错误的方向? 没有方向指定,默认是水平的,但这个布局有多个孩子,其中至less有一个layout_width =“match_parent” 问题:检查具有多个子项的LinearLayouts设置方向Id:方向 这是错误代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="@dimen/cell_height_1_of_3" > <ImageView android:id="@+id/item_cover" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_gravity="left" android:layout_marginLeft="8dp" android:scaleType="fitCenter" android:src="@drawable/doc_item_icon" /> <ImageView android:layout_width="fill_parent" android:layout_height="@dimen/cell_height_1_of_3" android:background="#0000" android:padding="5dp" android:scaleType="centerInside" android:visibility="gone" /> <TextView android:id="@+id/item_title" android:layout_width="fill_parent" android:layout_height="fill_parent" android:ellipsize="end" android:gravity="center" android:maxLines="1" android:text="Add new" android:textColor="@color/office_color" android:textSize="@dimen/textview_small_size" /> </LinearLayout> 这是什么意思? 如果我忽略这个lint错误会发生什么?

Android的@hide注解究竟干什么?

Android中的许多内部API都标记为@hide 。 这到底是什么? 另一个答案是,它只隐藏Javadoc的方法,但是你可以使用reflection来访问它们。 这是没有意义的,但是 – 如果他们只从Javadoc隐藏,那么你肯定不需要reflection来访问它们。 事实上,我发现我没有。 我仍然可以调用一些@hide方法(也许只是静态方法?),应用程序编译并运行良好,据我所知。 我只是得到一个皮棉错误: 请注意,上面的代码仍然编译好。 我不关心API被更改的可能性,所以我很高兴使用私有API,但是有人可以解释这种行为吗? 此外,如果有任何方法可以在个案的基础上禁用皮棉,这将是有益的。

对于Android,我在哪里可以find@SuppressLint有效问题ID的完整列表

目前,我需要忽略一个与国际化相关的string连接警告,但是在将来要“学习如何钓鱼”来处理其他专门的警告。

Android – 将所有lint警告设置为除某些之外的错误

我正在尝试使我的持续集成在引入不在lint-baseline.xml文件中的新的lint警告时失败。 我想要把所有的lint警告视为错误(所以构build被中止),但我想要一种方式来指定某些lint检查被视为信息级或警告级,以便它们仍然出现在lint结果中,但不要不会导致构build失败。 下面是一个基本上我想要做的例子(除非这不起作用,如果存在任何不被忽略的警告,构build失败): lintOptions { lintConfig file("lint.xml") baseline file("lint-baseline.xml") checkAllWarnings true warningsAsErrors true abortOnError true informational 'MissingTranslation, …' // don't fail the build for these } 有没有一种简单的方法把所有的皮棉检查都视为错误,排除某些错误? 我曾经想过手动设置所有的200多个lint检查到错误级别,但是这不是很有前途的证据,因为每次添加新的lint检查都必须更新列表。

禁用LINT检查的副作用是什么?

其实,我的应用程序没有运行,所以我点击“禁用检查”,之后,它开始运行Swiftly。 现在,应用程序中是否会出现任何即将出现的问题?

Android lint.xml中不允许使用元素忽略

我目前正在减less我的Android项目中的lint警告/错误。 我正在尽可能地修复,但有些不适用于我的项目,其他人来自第三方库等。 所以我在我的app/中的lint.xml文件中设置了一些lint规则,以便它自动被拾取。 这是我的lint文件的一个减less的版本: <?xml version="1.0" encoding="UTF-8"?> <lint> <issue id="UnusedResources"> <ignore regexp=".*google-services.*" /> </issue> </lint> 现在这些lint规则被正确地选中并工作,但是Android Studio语法突出显示为ignore红色,并且声明“此处不允许元素忽略”,对于此xml文件中的所有忽略标记也是如此。 任何人都可以帮我摆脱这个烦人的红色?

运行GTM诊断错误

当我尝试在Eclipse中清理我的Android项目时,我总是得到这个错误: An internal error occurred during: "Running GTM diagnose". com.android.tools.lint.detector.api.XmlContext: method <init>(Lcom/android/tools/lint/client/api/LintDriver;Lcom/android/tools/lint/detector/api/Project;Lcom/android/tools/lint/detector/api/Project;Ljava/io/File;Lcom/android/resources/ResourceFolderType;)V not found 任何帮助将非常感激。

./gradlew林特说“没有问题”,但分析 – >检查代码发现问题

我在Android Studio中有一个奇怪的问题:通过手动启动的linter Analyze -> Inspect Code -> "Whole project" 发现一些问题,但是如果我这样做 ./gradlew lint 在控制台,它说 Ran lint的变体版本:find0个问题 Ran lint变种debugging:发现0个问题 我的gradle文件中没有lintOptins ,但是使用lint.xml ,这里是: <?xml version="1.0" encoding="UTF-8"?> <lint> <issue id="all"> <ignore path="build" /> </issue> <issue id="all"> <ignore path="businesslogic/build" /> </issue> </lint> 我的问题:如何使控制台显示相同的错误在Android工作室检查?