Основная цель - переопределить системный класс Android (Activity, View и т. Д.) Своей собственной реализацией.
http://android -developers.blogspot.com / 2011/07 / custom-class-loading-in-dalvik.html
Реализован ClassLoader для загрузки пользовательского класса, загрузка несистемного класса (пользовательский класс) работает.
Но когда я пытаюсь загрузить Activity с моей реализацией- он не загружается, потому что ClassLoader уже имеет этот класс в своем кеше:
/**
* Returns the class with the specified name if it has already been loaded
* by the virtual machine or {@code null} if it has not yet been loaded.
*
* @param className
* the name of the class to look for.
* @return the {@code Class} object or {@code null} if the requested class
* has not been loaded.
*/
protected final Class<?> findLoadedClass(String className) {
ClassLoader loader;
if (this == BootClassLoader.getInstance())
loader = null;
else
loader = this;
return VMClassLoader.findLoadedClass(loader, className);
}
Как я могу изменить загрузчик классов, чтобы вводить свой собственный класс вместо системы?