簡體   English   中英

android MediaPlayer在資源目錄中播放錯誤的mp3文件

[英]android MediaPlayer is playing the wrong mp3 file in assets directory

我正在嘗試從資源目錄播放一個mp3文件,但是當我用MediaPlayer啟動它時,會發生一些完全不同的事情。 這是代碼:

String mp3File = "dir/a/music.mp3";  //the path here is file:///android_asset/dir/a/music.mp3;
AssetManager assetMan = getAssets();
MediaPlayer media = new MediaPlayer();
FileInputStream mp3Stream = assetMan.openFd(mp3File).createInputStream();
media.setDataSource(mp3Stream.getFD());
media.prepare();
media.start();

它似乎播放了一堆駐留在assets目錄中的其他文件,而不是播放mp3File。 有任何想法嗎?

使用這種方式它是非常有用的功能:)

    public void playBeep() {
    try {

        if (m.isPlaying()) {
            m.stop();
            m.release();
            m = new MediaPlayer();
        }
        AssetFileDescriptor descriptor = getAssets().openFd("mp3 name.mp3");
        m.setDataSource(descriptor.getFileDescriptor(), descriptor.getStartOffset(), descriptor.getLength());
        descriptor.close();

        m.prepare();
        m.setVolume(1f, 1f);
        m.setLooping(true);
        m.start();
    } catch (Exception e) {
    }
}
   MediaPlayer mp = new MediaPlayer();     
     AssetFileDescriptor descriptor;
   descriptor = getAssets().openFd( "filename.mp3" );
    mp.setDataSource( descriptor.getFileDescriptor(), descriptor.getStartOffset(),  descriptor.getLength() );
    descriptor.close();
    mp.prepare();
   mp.start();

把你的mp3放在assets文件夾中。 你可以參考這個鏈接play-audio-file-from-the-assets-directory
這也是android-problem-playing-sounds-from-assets-folder

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM