使用MediaPlayer从电话或SD卡播放视频时出现问题。一旦播放新视频,程序就开始播放。如果用户单击“后退”按钮或单击下一个视频,则会存储当前视频长度。下次单击同一视频时,需要恢复视频。
但是问题是。我存储了当前的视频长度。当我打开应用程序视频时,将从头开始播放。之后,如果我返回并单击同一视频,则该视频将继续播放,直到我关闭该应用程序为止。之后,如果我打开一个应用程序并播放视频,则和以前一样。
我正在使用tcking / GiraffePlayer2库。 https://github.com/tcking/GiraffePlayer2
另一个加密文件。因此,如果用户按下“后退”按钮或将其最小化,我将删除解密的文件。在最小化的情况下,当用户最大化时,我成功地恢复了视频。以防万一Opening应用程序出现此问题。
代码
tcking.github.com.giraffeplayer2.VideoView videoView;
videoView = (tcking.github.com.giraffeplayer2.VideoView) findViewById(R.id.video_view);
MediaPlayer mp = MediaPlayer.create(this, Uri.parse(decryptedFile));
videoView.setVideoPath(decryptedFile);
videoView.getPlayer().start();
if (current!=0) {
mp.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
Log.d("videolength ", "playVideo: 31 " + current);
videoView.getPlayer().pause();
mp.seekTo(current);
int dur = mp.getDuration();
videoView.getPlayer().seekTo(current);
videoView.getPlayer().start();
Log.d("duration", "onPrepared: " + dur);
}
});
}
此处解密的文件是SD卡中的文件。我坚持了很多天的这个问题。我搜索并尝试了很多解决方案,但没有一个对我有用。
尝试解决方案。 Videoview Pausing and resuming VideoView not playing Video from desired position