Package soot.dexpler
Class DexClassLoader
- java.lang.Object
-
- soot.dexpler.DexClassLoader
-
public class DexClassLoader extends Object
Class for loading methods from dex files
-
-
Constructor Summary
Constructors Constructor Description DexClassLoader()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected DexAnnotationcreateDexAnnotation(SootClass clazz, IInitialResolver.Dependencies deps)Allow custom implementations to use different dex annotation implementationsprotected DexMethodcreateDexMethodFactory(org.jf.dexlib2.iface.MultiDexContainer.DexEntry<? extends org.jf.dexlib2.iface.DexFile> dexEntry, SootClass sc)Allow custom implementations to use different dex method factoriesprotected voidloadField(SootClass declaringClass, DexAnnotation annotations, org.jf.dexlib2.iface.Field sf)Loads a single field from a dex fileprotected voidloadMethod(org.jf.dexlib2.iface.Method method, SootClass declaringClass, DexAnnotation annotations, DexMethod dexMethodFactory)Loads a single method from a dex fileIInitialResolver.DependenciesmakeSootClass(SootClass sc, org.jf.dexlib2.iface.ClassDef defItem, org.jf.dexlib2.iface.MultiDexContainer.DexEntry<? extends org.jf.dexlib2.iface.DexFile> dexEntry)
-
-
-
Method Detail
-
loadMethod
protected void loadMethod(org.jf.dexlib2.iface.Method method, SootClass declaringClass, DexAnnotation annotations, DexMethod dexMethodFactory)Loads a single method from a dex file- Parameters:
method- The method to loaddeclaringClass- The class that declares the method to loadannotations- The worker object for handling annotationsdexMethodFactory- The factory method for creating dex methods
-
makeSootClass
public IInitialResolver.Dependencies makeSootClass(SootClass sc, org.jf.dexlib2.iface.ClassDef defItem, org.jf.dexlib2.iface.MultiDexContainer.DexEntry<? extends org.jf.dexlib2.iface.DexFile> dexEntry)
-
createDexAnnotation
protected DexAnnotation createDexAnnotation(SootClass clazz, IInitialResolver.Dependencies deps)
Allow custom implementations to use different dex annotation implementations- Parameters:
clazz-deps-- Returns:
-
createDexMethodFactory
protected DexMethod createDexMethodFactory(org.jf.dexlib2.iface.MultiDexContainer.DexEntry<? extends org.jf.dexlib2.iface.DexFile> dexEntry, SootClass sc)
Allow custom implementations to use different dex method factories- Parameters:
dexFile-sc-- Returns:
-
loadField
protected void loadField(SootClass declaringClass, DexAnnotation annotations, org.jf.dexlib2.iface.Field sf)
Loads a single field from a dex file- Parameters:
declaringClass- The class that declares the method to loadannotations- The worker object for handling annotationsfield- The field to load
-
-