Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何设置android mediaPlayer启动活动的持续时间_Java_Android_Android Mediaplayer - Fatal编程技术网

Java 如何设置android mediaPlayer启动活动的持续时间

Java 如何设置android mediaPlayer启动活动的持续时间,java,android,android-mediaplayer,Java,Android,Android Mediaplayer,我需要帮助设置开始活动时MediaPlayer的持续时间 我尝试过使用seekTo(),但它不能正常工作 以下是我正在做的: protected void Player(String bURL, int seekTo){ btn = (Button) findViewById(R.id.playpauseBtn); setVolumeControlStream(AudioManager.STREAM_MUSIC); mediaPlayer = new MediaPlaye

我需要帮助设置开始活动时MediaPlayer的持续时间

我尝试过使用
seekTo()
,但它不能正常工作

以下是我正在做的:

protected void Player(String bURL, int seekTo){
    btn = (Button) findViewById(R.id.playpauseBtn);
    setVolumeControlStream(AudioManager.STREAM_MUSIC);
    mediaPlayer = new MediaPlayer();
    mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
    try {
        mediaPlayer.setDataSource(bURL);
        mediaPlayer.prepareAsync();
        mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
            @Override
            public void onPrepared(MediaPlayer mp) {
                if (!mediaPlayer.isPlaying()) {
                    if (seekTo != 0) {
                        mediaPlayer.seekTo(seekTo);
                    }
                    mediaPlayer.start();
                }
            }
        });
    } catch (IOException e) {
        e.printStackTrace();
    }
}
尝试对此进行修改:

mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mp) {
            if (!mp.isPlaying()) {
                if (seekTo != 0) {
                   mp.seekTo(seekTo);
                }
                mp.start();
            }

        }
    });
mediaPlayer.setDataSource(bURL);
mediaPlayer.prepareAsync();

你是说你想找个职位?谢谢你的快速回复。正是我想寻找某个位置。我这样做了,但MediaPlayer从0开始。注销seekTo值可能是0。我试图分配的值以毫秒为单位,如7500,我想知道是否有可以在MediaPlayer启动时触发的事件,然后我想它会正常工作。它应该在is工作,我成功地使用了它。可能会质疑整个代码包括“seekTo”赋值。顺便说一句,行this.mediaPlayer=mediaPlayer;是多余的。我刚刚更新了这个问题,基本上我做了一个函数,我只传递音频文件url和seekTo值(毫秒)。