START / STOP MEDIAPLAYER android studio

问题描述 投票:0回答:2

播放/停止按钮-如何使音乐从头开始播放?停止功能不是暂停功能”

    audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);

    b_play = (Button) findViewById(R.id.b_play);
    b_play.setEnabled(false);
    b_play.setText("Loading");


    mediaPlayer = new MediaPlayer();
    mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

    new PlayerTask().execute(stream);

    b_play.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view ) {
            if (started) {
                started = false;
                mediaPlayer.pause();
                b_play.setText("PLAY");
            } else {
                started = true;
                mediaPlayer.start();
                b_play.setText("STOP");
            }
        }
    });

谢谢您的帮助

java android android-mediaplayer
2个回答
0
投票

mediaPlayer.seekTo(0)之后呼叫mediaPlayer.pause();

b_play.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view ) {
            if (started) {
                started = false;
                mediaPlayer.pause();
                mediaPlayer.seekTo(0);
                b_play.setText("PLAY");
            } else {
                started = true;
                mediaPlayer.start();
                b_play.setText("STOP");
            }
        }
    });

0
投票
audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);

        b_play = (Button) findViewById(R.id.b_play);
        b_play.setEnabled(false);
        b_play.setText("ŁADOWANIE");


        mediaPlayer = new MediaPlayer();
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

        new PlayerTask().execute(stream);

        b_play.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view ) {
                if (started) {
                    started = false;
                    mediaPlayer.pause();
                    mediaPlayer.seekTo(0);
                    b_play.setText("PLAY");
                } else {
                    started = true;
                    mediaPlayer.start();
                    b_play.setText("STOP");
                }
            }
        }); 

 seekbar = (SeekBar)findViewById(R.id.seekBar1);

        audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);

        seekbar.setMax(audioManager.getStreamMaxVolume(AudioManager.STREAM_MUSIC));

        seekbar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
            @Override
            public void onProgressChanged(SeekBar seekBar, int newVolume, boolean b) {
                audioManager.setStreamVolume(AudioManager.STREAM_MUSIC, newVolume, 0);
            }

            @Override
            public void onStartTrackingTouch(SeekBar seekBar) {

            }

            @Override
            public void onStopTrackingTouch(SeekBar seekBar) {


            }

        });
    }





 class PlayerTask extends AsyncTask<String, Void, Boolean> {
        @Override
        protected Boolean doInBackground(String... strings) {


            try {
                mediaPlayer.setDataSource(strings[0]);
                mediaPlayer.prepare();
                prepared = true;
            } catch (IOException e) {
                e.printStackTrace();
            }

            return prepared;
        }

        @Override
        protected void onPostExecute(Boolean aBoolean) {
            super.onPostExecute(aBoolean);
            b_play.setEnabled(true);
            b_play.setText("PLAY");
        }
    }

    @Override
    protected void onPause() {
        super.onPause();
        if (started) {
            mediaPlayer.start();
        }
    }

    @Override
    protected void onResume() {
        super.onResume();
        if (started) {
            mediaPlayer.start();
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        if (prepared) {
            mediaPlayer.release();
            mediaPlayer = null;
        }

    }

}

[所有播放器代码,我添加了mediaPlayer.seekTo (0)但音乐不会再次打开

© www.soinside.com 2019 - 2024. All rights reserved.