Package soot.dexpler
Class DexFileProvider
- java.lang.Object
-
- soot.dexpler.DexFileProvider
-
public class DexFileProvider extends Object
Class providing dex files from a given source, e.g., jar, apk, dex, folder containing multiple dex files- Author:
- Manuel Benz created on 16.10.17
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classDexFileProvider.DexContainer<T extends org.jf.dexlib2.iface.DexFile>
-
Constructor Summary
Constructors Constructor Description DexFileProvider(Singletons.Global g)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleanacceptFile(org.jf.dexlib2.iface.MultiDexContainer.DexEntry<? extends org.jf.dexlib2.iface.DexFile> entry)List<DexFileProvider.DexContainer<? extends org.jf.dexlib2.iface.DexFile>>getDexFromSource(File dexSource)Returns all dex files found in dex source sorted by the default dex prioritizerDexFileProvider.DexContainer<? extends org.jf.dexlib2.iface.DexFile>getDexFromSource(File dexSource, String dexName)Returns the first dex file with the given name found in the given dex sourceList<DexFileProvider.DexContainer<? extends org.jf.dexlib2.iface.DexFile>>getDexFromSource(File dexSource, Comparator<DexFileProvider.DexContainer<? extends org.jf.dexlib2.iface.DexFile>> prioritizer)Returns all dex files found in dex source sorted by the default dex prioritizerstatic DexFileProviderv()
-
-
-
Constructor Detail
-
DexFileProvider
public DexFileProvider(Singletons.Global g)
-
-
Method Detail
-
v
public static DexFileProvider v()
-
getDexFromSource
public List<DexFileProvider.DexContainer<? extends org.jf.dexlib2.iface.DexFile>> getDexFromSource(File dexSource) throws IOException
Returns all dex files found in dex source sorted by the default dex prioritizer- Parameters:
dexSource- Path to a jar, apk, dex, odex or a directory containing multiple dex files- Returns:
- List of dex files derived from source
- Throws:
IOException
-
getDexFromSource
public List<DexFileProvider.DexContainer<? extends org.jf.dexlib2.iface.DexFile>> getDexFromSource(File dexSource, Comparator<DexFileProvider.DexContainer<? extends org.jf.dexlib2.iface.DexFile>> prioritizer) throws IOException
Returns all dex files found in dex source sorted by the default dex prioritizer- Parameters:
dexSource- Path to a jar, apk, dex, odex or a directory containing multiple dex filesprioritizer- A comparator that defines the ordering of dex files in the result list- Returns:
- List of dex files derived from source
- Throws:
IOException
-
getDexFromSource
public DexFileProvider.DexContainer<? extends org.jf.dexlib2.iface.DexFile> getDexFromSource(File dexSource, String dexName) throws IOException
Returns the first dex file with the given name found in the given dex source- Parameters:
dexSource- Path to a jar, apk, dex, odex or a directory containing multiple dex files- Returns:
- Dex file with given name in dex source
- Throws:
CompilationDeathException- If no dex file with the given name existsIOException
-
acceptFile
protected boolean acceptFile(org.jf.dexlib2.iface.MultiDexContainer.DexEntry<? extends org.jf.dexlib2.iface.DexFile> entry)
-
-