簡體   English   中英

Android MediaPlayer沒有播放

[英]Android MediaPlayer not playing

以下問題:我只想在Android中使用媒體播放器播放一個小的.wav文件。 .wav文件位於raw目錄中。 我想從MainActivity啟動聲音。 這就是我播放聲音的方式:

MediaPlayer mp = MediaPlayer.create(getApplicationContext(), R.raw.sound1);
mp.start();

一旦我調用mp.start()我就會在LogCat中收到以下錯誤:

01-05 11:07:17.729 19960-19960/de.benedev.simplesound E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
01-05 11:07:17.729 19960-19960/de.benedev.simplesound E/MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
01-05 11:07:17.862 19960-19960/de.benedev.simplesound D/MediaPlayer: setSubtitleAnchor in MediaPlayer
01-05 11:07:17.925 19960-21184/de.benedev.simplesound E/MediaPlayer: error (1, -2147483648)
01-05 11:07:17.926 19960-19960/de.benedev.simplesound E/MediaPlayer: Error (1,-2147483648)

任何人都知道如何解決這個問題?

使用下面這些回答的代碼在這里 它會像魅力一樣工作。

package com.example.hellomoon;

import android.content.Context;
import android.media.MediaPlayer;

public class AudioPlayer {

private MediaPlayer mMediaPlayer;

public void stop() {
    if (mMediaPlayer != null) {
        mMediaPlayer.release();
        mMediaPlayer = null;
    }
}

public void play(Context c, int rid) {
    stop();

    mMediaPlayer = MediaPlayer.create(c, rid);
    mMediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
        @Override
        public void onCompletion(MediaPlayer mediaPlayer) {
            stop();
        }
    });

    mMediaPlayer.start();
}

}
MediaPlayer player = MediaPlayer.create(this,  R.raw.zindgivalaaop);
player.setVolume(50,50);
player.start();

@Override
public void onDestroy() {
     super.onDestroy();
     player.stop();
     player.release();
}

嘗試傳遞類上下文而不是getApplicationContext()

試試這個: 播放簡短的.wav文件 - Android

SoundPool是播放短.wav(2-3秒)文件的最佳方式

有關更多信息,請訪問: https//developer.android.com/reference/android/media/SoundPool.html

我認為您的MediaPlayer正在運行。 在設置中檢查設備的“媒體音量”。 JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0此消息在設備“媒體音量”設置為零時出現。

暫無
暫無

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

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