访问手机上的资源/原始资源的问题...在模拟器中正常工作

时间:2011-01-05 15:43:18

标签: java android resources

我正在尝试以编程方式访问/res/raw文件夹中的资源(特别是... mp3文件)。在模拟器中,以下模板适用于我。

Uri uri = Uri.parse("android.resource://com.foo.bar/raw/name_of_resource");
MediaPlayer mp3 = MediaPlayer.create(this, uri);

在实际的手机上,MediaPlayer.create()方法返回null。是什么赋予了?是否有更好的方式以编程方式访问资源?

P.S。

我没有使用MediaPlayer.create(this, R.raw.name_of_resource)是有原因的。在我的特定情况下,生成资源名称要比找出资源的id容易得多。 (即我可以相当容易地找出String name_of_resource,但推断实际integer id R.raw.name_of_resource会涉及更多工作和更多switch语句

1 个答案:

答案 0 :(得分:0)

  

是否有更好的方式以编程方式访问资源?

create()上使用静态MediaPlayer方法。

  

在我的特殊情况下,生成资源名称要比找出资源的id容易得多。

使用getResources().getIdentifier()获取您的资源ID。