【问题标题】:playing a MP3 from raw folder?从原始文件夹播放 MP3?
【发布时间】:2014-01-17 18:10:20
【问题描述】:

我试图从原始文件夹播放 MP3。我有不同的按钮来播放不同的 MP3,所以每次我必须更改媒体播放器输入,这是我的按钮点击代码:

public void onClick(View v) {
        t=R.raw.virtualbarber
                playsound(t);

        }

这是我在 .create 中出错的媒体播放器代码! :

private void playSound(string t ){
mp = MediaPlayer.create(getActivity(), t);
mp.setOnCompletionListener(new OnCompletionListener() {

@Override
public void onCompletion(MediaPlayer mp) {

    mp.release();
}
}); 
mp.setLooping(true);
mp.start();
}}

我还在我的项目之上声明了我的字符串和媒体播放器,如下所示:

MediaPlayer mp;
int t;

没有任何作用!我的其他程序运行正常,但没有!

日志猫

01-17 22:01:35.016: E/AndroidRuntime(30521): FATAL EXCEPTION: main
01-17 22:01:35.016: E/AndroidRuntime(30521): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.safshari.board3d/com.safshari.board3d.MainActivity}: java.lang.NullPointerException
01-17 22:01:35.016: E/AndroidRuntime(30521):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2247)
01-17 22:01:35.016: E/AndroidRuntime(30521):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2297)

【问题讨论】:

  • v==R.raw.virtualbarber 很不属于。 R.id.something 更讨喜。
  • 那么如何将我的 mp3 添加到媒体播放器?
  • 我从我的其他程序中获取媒体播放器代码,它只有一个 mp3 并且工作正常我想为每个按钮添加一个
  • t 不是字符串。 R.raw.virtualbarber 应该是int。所以,playSound(int t); 更有意义。
  • @Soheyl mp = MediaPlayer.create(getActivity(), R.raw.virtualbarber);

标签: android button android-mediaplayer


【解决方案1】:

使用

 mp = MediaPlayer.create(getActivity(), R.raw.virtualbarber);

如果是片段而不是this,请使用getActivity()

mediaplayer fixed tnx to you but now im getting nullpointer exception on start of program ? 

如果它仍然崩溃发布更新的相关代码以及堆栈跟踪以获得进一步帮助

【讨论】:

  • @Soheyl 发布完整的堆栈跟踪。有一个由部分引起的表示导致异常的行
  • 好吧,我自己修复了空指针,这是菜鸟问题!那么我如何停止播放之前播放的内容,所以两个 mp3 不能同时播放?
  • @Soheyl 新问题发布一个包含相关细节的新问题
【解决方案2】:

使用类似的uri:

  Uri myUri = Uri.parse("android.resource://com.package.sample/raw/filename");
  mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
  mp.setDataSource(getApplicationContext(), myUri);
  mp.prepare();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-24
    • 1970-01-01
    • 2012-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多