【发布时间】:2021-08-21 22:38:47
【问题描述】:
如何制作播放媒体文件的相同按钮,停止它?到目前为止,这是我尝试过的,但问题是每当我按下按钮尝试播放和停止音乐时,它都会在运行日志中出现错误并且没有任何反应。我还在学习东西,所以如果有人可以解释如何以正确的方式播放和停止音频以及使其正常运行所需的任何其他内容,那就太好了。我对 MediaPlayer 状态比较熟悉,只是我无法正确组合代码。谢谢。
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final MediaPlayer musicMP = MediaPlayer.create(this, R.raw.lofi);
Button playMusic = this.findViewById(R.id.bell_peppers_and_beef);
playMusic.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
musicMP.start();
musicMP.stop();
}
});}}
运行日志错误:
E/MediaPlayerNative:在状态 64 中开始调用,mPlayer(0x720df4c340) V/MediaPlayerNative: 收到消息 msg=100, ext1=-38, ext2=0 E/MediaPlayerNative: 错误 (-38, 0) V/MediaPlayer-JNI: 停止 V/MediaPlayerNative:停止 E/MediaPlayerNative:在状态 0 中停止调用, mPlayer(0x720df4c340) V/MediaPlayerNative: 收到消息 msg=100, ext1=-38, ext2=0 E/MediaPlayerNative: 错误 (-38, 0)
【问题讨论】: