Resources.getSystem().openRawResource给出资源未找到异常

Nav*_*chi 2 android static-methods inputstream

在我的Android应用程序中,我想以静态方法访问我的文本文件,但使用此代码:

InputStream is = Resources.getSystem().openRawResource(R.raw.adv_types);

给我运行时异常:资源未找到异常

虽然我可以使用此代码以非静态方法访问该文件:

InputStream is = getResources().openRawResource(R.raw.adv_types);

虽然它在静态方法中不可用.

你知道为什么第一个代码不起作用吗?在静态方法中访问文本文件(或一般资源)的解决方案是什么?

Bla*_*elt 6

因为Resources.getSystem()只允许您访问系统资源而不访问应用程序资源.从文档:

返回一个全局共享资源对象,该对象仅提供对系统资源的访问权限(无应用程序资源),并且未针对当前屏幕进行配置(不能使用维度单位,不会根据方向更改等).