ClassLoader的getResource()方法在Android中始终返回null

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ClassLoader的getResource()方法在Android中始终返回null相关的知识,希望对你有一定的参考价值。

这个方法在eclipse中运行正常,但是当我使用android Studio时,它一直返回null,即使我将“”传递给参数,之前有没有人遇到过这个问题?

Android-Studio版本为1.5

这里是测试代码Log.e("itag",PropertiesConfig.class.getResource("")+"");输出为null

任何建议表示赞赏;

答案

为什么你使用ClassLoader?你不能在android中加载.class文件。如果必须,你应该将.class文件转换为.dex文件,而是使用DexClassLoader。

另一答案

您可以在共享测试模块中创建一个名为resources的文件夹,如图像enter image description here中所示

通常可以将.json文件放在里面

然后在测试中你可以做到:

this.javaClass.classLoader!!.getResource("test_data.json").openStream()

获取要提供给JSON解析器的文件内容的InputStream

以上是关于ClassLoader的getResource()方法在Android中始终返回null的主要内容,如果未能解决你的问题,请参考以下文章

可执行 jar 中 Class.getResource() 和 ClassLoader.getResource() 的奇怪行为

关于Class.getResource和ClassLoader.getResource的路径问题

关于Class.getResource和ClassLoader.getResource的路径问题

关于Class.getResource和ClassLoader.getResource的路径问题

[Java开发之路](18)关于Class.getResource和ClassLoader.getResource的路径问题

(转)关于Class.getResource和ClassLoader.getResource的路径问题