我尝试使用 DexFile :
获取所有课程的名称private List<String> getAllClasses() throws IOException {
ArrayList<String> classes= new ArrayList<String>();
DexFile df = new DexFile(getPackageCodePath());
for (Enumeration<String> iter = df.entries(); iter.hasMoreElements();) {
String s = iter.nextElement();
classes.add(s);
}
return classes;
}
禁用即时运行后,我会找到更多类(大小= 4157)。我甚至可以从外部库中获取课程。但这还不是全部。我仍然找不到java.lang,android.widget(只有android.support)包等的类。
答案 0 :(得分:0)
那是因为那些课程不在您的应用中。它们是框架的一部分,因此它们不在您的DEX文件中。