如何使用 android 中的 Uri.parse 从原始文件加载 mp3?

How do I load an mp3 from raw using Uri.parse in android?

如何使用 Uri.parse 从原始文件加载 mp3?变量 name 是一个字符串(例如 fun(如果文件是 fun.mp3))。当我尝试从 raw 播放音频文件时,收到空对象引用错误。我可能遗漏了一些超级简单的东西。谢谢。

    player = MediaPlayer.create(this, Uri.parse("R.raw." + name));
    player.start();

How do I load an mp3 from raw using Uri.parse?

你通常不会。

When I try to play an audio file from raw, but receive a null object reference error.

除其他外,这不是解析为 Uri 的有效字符串。

使用将原始资源 ID 作为 int 参数的 create() 方法。如果您的问题是您没有 int,请使用 getResources().getIdentifier() 按名称查找它。

你做错了,要么这样做

player = MediaPlayer.create(this, R.raw.name);
    player.start();

或者这样做:

int resID = myContext.getResources().getIdentifier("name","raw",myContext.getPackageName());

player = MediaPlayer.create(this, resID);
    player.start();