在安卓系统中查找软件包中的所有类
如何在Android上找到软件包中的所有类?我使用PathClassLoader,但它总是返回一个空枚举?
附加信息
已尝试建议的反射方法。关于反射库的几个要点。通过maven central提供的库与Android不兼容,并给出dex错误。我必须包含源代码并编译dom4j,java-assist。
反射的问题,我最初的解决方案是Android中的PathClassLoader返回包的空枚举。
方法的问题在于Android中的getResource总是返回空枚举。
final String resourceName = aClass.getName().replace(".", "/") + ".class";
for (ClassLoader classLoader : loaders) {
try {
final URL url = classLoader.getResource(resourceName);
if (url != null) {
final String normalizedUrl = url.toExternalForm().substring(0, url.toExternalForm().lastIndexOf(aClass.getPackage().getName().replace(".", "/")));
return new URL(normalizedUrl);
}
} catch (MalformedURLException e) {
e.printStackTrace();
}
}