Po prostu natknąłem się na tę odpowiedź w Unable to pause/forward/backward video using mediacontroller in android. Niektóre urządzenia LG również wydają się mieć ten problem.
Jak wspomniano przez @Vineela Yarlagadda, trzeba zastąpić metody VideoView poniżej
@Override
public boolean canSeekForward() {
return true;
}
@Override
public boolean canSeekBackward() {
return true;
}
@Override
public boolean canPause() {
return true;
}
Testowany & prac na Nexusa 7.
Alternatywne rozwiązanie: Użyj SurfaceView zamiast VideoView zasugerowany w przykładowym kodzie w ApiDemos.
setContentView(R.layout.media_player2);
mSurface = (SurfaceView) findViewById(R.id.surface);
holder = mSurface.getHolder();
holder.addCallback(this);
mMediaPlayer = new MediaPlayer();
mMediaPlayer.setDataSource(stream);
mMediaPlayer.setDisplay(holder);
mMediaPlayer.prepareAsync();
mController = new MediaController(this);
mMediaPlayer.setOnBufferingUpdateListener(this);
mMediaPlayer.setOnCompletionListener(this);
mMediaPlayer.setOnPreparedListener(this);
mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
mController.setMediaPlayer(this);
mController.setAnchorView(mSurface);
Otworzyłem code.google.com/p/android/issues/detail?id=59776 błędu po napotkaniu ten sam problem jak @kriswiz gdy użyłem VideoView i Player. Wideo będzie teraz odtwarzane na Nexusie 7 i na Samsung Nexusie.
Problem Link do trackera (brak odpowiedzi w tej chwili): https://code.google.com/p/android/issues/detail?id=59776 – Geobits