Spracherkennung für: .md vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]
# Android Lint Checks for AOSP
Custom Android Lint checks are written here to be executed against all java
modules in AOSP. For framework specific checks, see
`//platform/framework/base/tools/lint`.
# [Android Global Lint Checker](./global)
Checks written here are executed for the entire tree. The `AndroidGlobalLintChecker`
build target is included by soong on all invocations of lint.
## How to add new global lint checks
1. Write your detector with its issues and put it into
`global/checks/src/main/java/com/google/android/lint`.
2. Add your detector's issues into `AndroidGlobalIssueRegistry.kt`'s `issues`
field.
3. Write unit tests for your detector in one file and put it into
`global/checks/test/java/com/google/android/lint`.
4. One your change is reviewed and merged, your lint check should be applied in
lint report builds across the entire Android tree!
# How to apply automatic fixes suggested by lint
See [lint_fix](./fix/README.md)
# Create or update a baseline
Baseline files can be used to silence known errors (and warnings) that are deemed to be safe. Whe
n
there is a lint-baseline.xml file in the root folder of the java library, soong will
automatically use it. You can override the file using lint properties too.
```
java_library {
lint: {
baseline_filename: "my-baseline.xml", // default: lint-baseline.xml;
}
}
```
When using soong to create a lint report (as described above), it also creates a reference
baseline file. This contains all lint errors and warnings that were found. So the next time
you run lint, if you use this baseline file, there should be 0 findings.
After the previous invocation, you can find the baseline here:
```
out/soong/.intermediates/frameworks/base/services/autofill/services.autofill/android_common/lint/lint-baseline.xml
```
As noted above, this baseline file contains warnings too, which might be undesirable. For example,
CI tools might surface these warnings in code reviews. In order to create this file without
warnings, we need to pass another flag to lint: `--nowarn`. One option is to add the flag to your
Android.bp file and then run lint again:
```
lint: {
extra_check_modules: ["AndroidFrameworkLintChecker"],
flags: ["--nowarn"],
}
```
# Documentation
- [Android Lint Docs](https://googlesamples.github.io/android-custom-lint-rules/)
- [Lint Check Unit Testing](https://googlesamples.github.io/android-custom-lint-rules/api-guide/unit-testing.md.html)
- [Android Lint source files](https://source.corp.google.com/studio-main/tools/base/lint/libs/lint-api/src/main/java/com/android/tools/lint/)
- [PSI source files](https://github.com/JetBrains/intellij-community/tree/master/java/java-psi-api/src/com/intellij/psi)
- [UAST source files](https://upsource.jetbrains.com/idea-ce/structure/idea-ce-7b9b8cc138bbd90aec26433f82cd2c6838694003/uast/uast-common/src/org/jetbrains/uast)
- [IntelliJ plugin for viewing PSI tree of files](https://plugins.jetbrains.com/plugin/227-psiviewer)