I want to set "NO_CACHE" to be newValue. Here is my code: I want to set "NO_CACHE" to be newValue. Here is my code:
static void setFinalStatic(Object newValue) throws Exception { Field field = CacheManager.class.getDeclaredField("NO_CACHE"); field.setAccessible(true); Field modifiersField=Field.class.getDeclaredField("modifiers"); modifiersField.setAccessible(true); modifiersField.setInt(field,field.getModifiers() & ~Modifier.FINAL); field.set(null, newValue); } But running this code on Android produces the following error: java.lang.NoSuchFieldException: modifiers
java.lang.NoSuchFieldException: modifiers I find "modifiers"modifiers is a field in the FieldField class on JAVAin Java, but it is not a field in the FieldField class on Android.
This is JAVA FieldJava Field class code:
http://www.docjar.com/html/api/java/lang/reflect/Field.java.html
This is Android FieldField class code:
http://www.oschina.net/code/explore/android-2.2-froyo/java/lang/reflect/Field.java
The above code in JAVAJava can work, but it does not work on the Android platform.
How do I fix this?