在Java中,可以使用以下方式替换默认系统ClassLoader:
java -Djava.system.class.loader=com.test.MyClassLoader xxx
通过这种方式,自定义ClassLoader用于加载新类,同时将默认系统ClassLoader作为其父级。
是否可以使用非运行时方法在Android应用程序中完成相同系统ClassLoader的替换? (渐变/清单或其他编译标志)
我不希望在运行时替换系统ClassLoader,而是在甚至加载Application类之前,在启动整个应用程序时为其设置一个不同的系统ClassLoader。
最终目标是在甚至调用Application类的<clinit>
之前运行代码(这实际上使我可以根据需要加载应用程序中的所有类)。