Dexlib2没有扫描Dexrewriter中的应用程序代码

时间:2017-03-15 12:40:43

标签: android dex smali

我正在使用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功能。

1 个答案:

答案 0 :(得分:0)

这是多个dex文件的问题。在迭代其他dex文件时,它能够找到类。