kel*_*ogs 4 android static-block classloader dalvik
我在Adnroid 2.2 SDK上,无法在MultiUserChat类中获取我的静态块来执行.我试图强制加载它
try
{
String qual = MultiUserChat.class.getName();
ClassLoader.getSystemClassLoader().loadClass(qual);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
它总是击中捕获块.'qual'获得该类的有效名称......它可以是什么?
您的应用程序包括ArrayList和Activity等框架类,以及FlashlightActivity等应用程序类.框架类由系统类加载器(以及引导类loadeR)加载; 应用程序类由应用程序类加载器加载.
系统类加载器只能看到系统类.它不知道应用程序类路径,也不能用于加载应用程序类.您需要使用应用程序类加载器来执行此操作.获取应用程序类加载器引用的最简单方法是通过应用程序类:
try {
String qual = MultiUserChat.class.getName();
MyActivity.class.getClassLoader().loadClass(qual);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2046 次 |
最近记录: |