com.android.tools.lint.checks
Class RegistrationDetector
java.lang.Object
com.android.tools.lint.detector.api.Detector
com.android.tools.lint.detector.api.ResourceXmlDetector
com.android.tools.lint.detector.api.LayoutDetector
com.android.tools.lint.checks.RegistrationDetector
- All Implemented Interfaces:
- com.android.tools.lint.detector.api.Detector.ClassScanner, com.android.tools.lint.detector.api.Detector.XmlScanner
public class RegistrationDetector
- extends com.android.tools.lint.detector.api.LayoutDetector
- implements com.android.tools.lint.detector.api.Detector.ClassScanner
Checks for missing manifest registrations for activities, services etc
and also makes sure that they are registered with the correct tag
TODO: Rewrite as Java visitor!
Nested classes/interfaces inherited from class com.android.tools.lint.detector.api.Detector |
com.android.tools.lint.detector.api.Detector.BinaryResourceScanner, com.android.tools.lint.detector.api.Detector.ClassScanner, com.android.tools.lint.detector.api.Detector.GradleScanner, com.android.tools.lint.detector.api.Detector.JavaScanner, com.android.tools.lint.detector.api.Detector.OtherFileScanner, com.android.tools.lint.detector.api.Detector.ResourceFolderScanner, com.android.tools.lint.detector.api.Detector.XmlScanner |
Field Summary |
static com.android.tools.lint.detector.api.Issue |
ISSUE
Unregistered activities and services |
protected com.google.common.collect.Multimap<java.lang.String,java.lang.String> |
mManifestRegistrations
|
Fields inherited from interface com.android.tools.lint.detector.api.Detector.XmlScanner |
ALL |
Method Summary |
void |
checkClass(com.android.tools.lint.detector.api.ClassContext context,
org.objectweb.asm.tree.ClassNode classNode)
|
protected static java.lang.String |
classToTag(java.lang.String className)
Looks up the tag a given framework class should be registered with |
java.util.Collection<java.lang.String> |
getApplicableElements()
|
com.android.tools.lint.detector.api.Speed |
getSpeed()
|
void |
visitElement(com.android.tools.lint.detector.api.XmlContext context,
org.w3c.dom.Element element)
|
Methods inherited from class com.android.tools.lint.detector.api.LayoutDetector |
appliesTo, hasPadding, isHeightFillParent, isWidthFillParent |
Methods inherited from class com.android.tools.lint.detector.api.ResourceXmlDetector |
appliesTo, run |
Methods inherited from class com.android.tools.lint.detector.api.Detector |
afterCheckFile, afterCheckLibraryProject, afterCheckProject, applicableSuperClasses, appliesToFolder, appliesToResourceRefs, beforeCheckFile, beforeCheckLibraryProject, beforeCheckProject, checkBinaryResource, checkCall, checkClass, checkFolder, checkInstruction, createJavaVisitor, getApplicableAsmNodeTypes, getApplicableAttributes, getApplicableCallNames, getApplicableCallOwners, getApplicableFiles, getApplicableMethodNames, getApplicableNodeTypes, getSpeed, visitAttribute, visitBuildScript, visitDocument, visitElementAfter, visitMethod, visitResourceReference |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface com.android.tools.lint.detector.api.Detector.ClassScanner |
checkCall, checkInstruction, getApplicableAsmNodeTypes, getApplicableCallNames, getApplicableCallOwners |
Methods inherited from interface com.android.tools.lint.detector.api.Detector.XmlScanner |
getApplicableAttributes, visitAttribute, visitDocument, visitElementAfter |
ISSUE
public static final com.android.tools.lint.detector.api.Issue ISSUE
- Unregistered activities and services
mManifestRegistrations
protected com.google.common.collect.Multimap<java.lang.String,java.lang.String> mManifestRegistrations
RegistrationDetector
public RegistrationDetector()
- Constructs a new
RegistrationDetector
getSpeed
@NonNull
public com.android.tools.lint.detector.api.Speed getSpeed()
- Overrides:
getSpeed
in class com.android.tools.lint.detector.api.Detector
getApplicableElements
public java.util.Collection<java.lang.String> getApplicableElements()
- Specified by:
getApplicableElements
in interface com.android.tools.lint.detector.api.Detector.XmlScanner
- Overrides:
getApplicableElements
in class com.android.tools.lint.detector.api.Detector
visitElement
public void visitElement(@NonNull
com.android.tools.lint.detector.api.XmlContext context,
@NonNull
org.w3c.dom.Element element)
- Specified by:
visitElement
in interface com.android.tools.lint.detector.api.Detector.XmlScanner
- Overrides:
visitElement
in class com.android.tools.lint.detector.api.Detector
checkClass
public void checkClass(@NonNull
com.android.tools.lint.detector.api.ClassContext context,
@NonNull
org.objectweb.asm.tree.ClassNode classNode)
- Specified by:
checkClass
in interface com.android.tools.lint.detector.api.Detector.ClassScanner
- Overrides:
checkClass
in class com.android.tools.lint.detector.api.Detector
classToTag
protected static java.lang.String classToTag(java.lang.String className)
- Looks up the tag a given framework class should be registered with