diff options
author | Connor Tumbleson <connor.tumbleson@gmail.com> | 2014-09-13 11:50:19 -0500 |
---|---|---|
committer | Connor Tumbleson <connor.tumbleson@gmail.com> | 2014-11-06 23:09:44 -0600 |
commit | 6811d13935522ab6acc7fbe623103b158dbf2f6d (patch) | |
tree | 3df5af74cb0a0a9cffbf92231117afc81f1d8ecb /baksmali | |
parent | f3d063dd176556862aee87e4d2feb9ea9bf9af39 (diff) | |
download | smali-6811d13935522ab6acc7fbe623103b158dbf2f6d.tar.gz |
Implement dex entry for non classes.dex files
Diffstat (limited to 'baksmali')
-rw-r--r-- | baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java | 1 | ||||
-rw-r--r-- | baksmali/src/main/java/org/jf/baksmali/main.java | 12 |
2 files changed, 12 insertions, 1 deletions
diff --git a/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java b/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java index 57941e1c..ea0ccf16 100644 --- a/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java +++ b/baksmali/src/main/java/org/jf/baksmali/baksmaliOptions.java @@ -54,6 +54,7 @@ public class baksmaliOptions { public int apiLevel = 15; public String outputDirectory = "out"; + public String dexEntry = "classes.dex"; public List<String> bootClassPathDirs = Lists.newArrayList(); public List<String> bootClassPathEntries = Lists.newArrayList(); diff --git a/baksmali/src/main/java/org/jf/baksmali/main.java b/baksmali/src/main/java/org/jf/baksmali/main.java index e50172fe..33d6d250 100644 --- a/baksmali/src/main/java/org/jf/baksmali/main.java +++ b/baksmali/src/main/java/org/jf/baksmali/main.java @@ -208,6 +208,9 @@ public class main { case 't': options.useImplicitReferences = false; break; + case 'e': + options.dexEntry = commandLine.getOptionValue("e"); + break; case 'N': disassemble = false; break; @@ -251,7 +254,7 @@ public class main { } //Read in and parse the dex file - DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, options.apiLevel); + DexBackedDexFile dexFile = DexFileFactory.loadDexFile(dexFileFile, options.dexEntry, options.apiLevel); if (dexFile.isOdexFile()) { if (!options.deodex) { @@ -450,6 +453,12 @@ public class main { .withArgName("FILE") .create("T"); + Option dexEntryOption = OptionBuilder.withLongOpt("dex-file") + .withDescription("looks for dex file named DEX_FILE, defaults to classes.dex") + .withArgName("DEX_FILE") + .hasArg() + .create("e"); + basicOptions.addOption(versionOption); basicOptions.addOption(helpOption); basicOptions.addOption(outputDirOption); @@ -467,6 +476,7 @@ public class main { basicOptions.addOption(jobsOption); basicOptions.addOption(resourceIdFilesOption); basicOptions.addOption(noImplicitReferencesOption); + basicOptions.addOption(dexEntryOption); debugOptions.addOption(dumpOption); debugOptions.addOption(ignoreErrorsOption); |