我正在使用dexlib2替换dex文件中的静态字符串。作为第一步,我在下面编写了一段代码来获取dex文件中的类:
try {
DexBackedDexFile dexFile = DexFileFactory.loadDexFile("classes.dex", 24);
Iterator iterator = dexFile.getClasses().iterator();
while (iterator.hasNext()) {
System.out.println("Value: " + iterator.next() + " ");
}
System.out.println("done");
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
问题是它打印出除我的代码之外的所有类。
有人面临同样的问题吗?另外要澄清的是,我的dex文件是来自多个dex文件的dex文件之一,因为我的应用程序正在使用multidex功能。
答案 0 :(得分:0)
这是多个dex文件的问题。在迭代其他dex文件时,它能够找到类。