public class WakelockDetector
extends com.android.tools.lint.detector.api.Detector
implements com.android.tools.lint.detector.api.Detector.ClassScanner
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.JavaPsiScanner, 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
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ANDROID_APP_ACTIVITY |
static com.android.tools.lint.detector.api.Issue |
ISSUE
Problems using wakelocks
|
Constructor and Description |
---|
WakelockDetector()
Constructs a new
WakelockDetector |
Modifier and Type | Method and Description |
---|---|
void |
afterCheckProject(com.android.tools.lint.detector.api.Context context) |
void |
checkCall(com.android.tools.lint.detector.api.ClassContext context,
org.objectweb.asm.tree.ClassNode classNode,
org.objectweb.asm.tree.MethodNode method,
org.objectweb.asm.tree.MethodInsnNode call) |
protected static int |
dfs(ControlFlowGraph.Node node)
Search from the given node towards the target; return false if we reach
an exit point such as a return or a call on the way there that is not within
a try/catch clause.
|
java.util.List<java.lang.String> |
getApplicableCallNames() |
afterCheckFile, afterCheckLibraryProject, applicableSuperClasses, appliesTo, appliesTo, appliesToResourceRefs, beforeCheckFile, beforeCheckLibraryProject, beforeCheckProject, checkBinaryResource, checkClass, checkClass, checkClass, checkFolder, checkInstruction, createJavaVisitor, createPsiVisitor, getApplicableAsmNodeTypes, getApplicableAttributes, getApplicableCallOwners, getApplicableConstructorTypes, getApplicableElements, getApplicableFiles, getApplicableMethodNames, getApplicableNodeTypes, getApplicablePsiTypes, getApplicableReferenceNames, getSpeed, getSpeed, run, visitAttribute, visitBuildScript, visitConstructor, visitConstructor, visitDocument, visitElement, visitElementAfter, visitMethod, visitMethod, visitReference, visitResourceReference, visitResourceReference
public static final java.lang.String ANDROID_APP_ACTIVITY
public static final com.android.tools.lint.detector.api.Issue ISSUE
public WakelockDetector()
WakelockDetector
public void afterCheckProject(@NonNull com.android.tools.lint.detector.api.Context context)
afterCheckProject
in class com.android.tools.lint.detector.api.Detector
@Nullable public java.util.List<java.lang.String> getApplicableCallNames()
getApplicableCallNames
in interface com.android.tools.lint.detector.api.Detector.ClassScanner
getApplicableCallNames
in class com.android.tools.lint.detector.api.Detector
public void checkCall(@NonNull com.android.tools.lint.detector.api.ClassContext context, @NonNull org.objectweb.asm.tree.ClassNode classNode, @NonNull org.objectweb.asm.tree.MethodNode method, @NonNull org.objectweb.asm.tree.MethodInsnNode call)
checkCall
in interface com.android.tools.lint.detector.api.Detector.ClassScanner
checkCall
in class com.android.tools.lint.detector.api.Detector
protected static int dfs(ControlFlowGraph.Node node)
node
- the current node