Mediacontroller не работает на вкладке nexus 7

У меня есть код Android для воспроизведения видео с помощью видеовизуальных и управляющих кнопок, таких как пауза, перемотка и перемотка вперед с помощью mediacontroller. Он работает на Nexus S, а также на многих телефонах samsung, но кнопки mediacontroller, похоже, не работают на Nexus 7! Мне нужно, чтобы он работал на всех устройствах. Есть ли что-то дополнительное, что мне нужно сделать?

MediaController mediacontroller = new MediaController(Activity.this); mediacontroller.setAnchorView(videoview); Uri video = Uri.parse("path/to/video"); videoview.setMediaController(mediacontroller); videoview.setVideoURI(video); videoview.start(); 

Просто наткнулся на этот ответ в разделе «Невозможно сделать паузу / вперед / назад», используя mediacontroller в Android . У некоторых устройств LG тоже есть эта проблема.

Как уже упоминалось @Vineela Yarlagadda, вам необходимо переопределить методы VideoView ниже

 @Override public boolean canSeekForward() { return true; } @Override public boolean canSeekBackward() { return true; } @Override public boolean canPause() { return true; } 

Протестировано и работает на Nexus 7.


Альтернативное решение: используйте SurfaceView вместо VideoView, как это предлагается в примере кода в 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); 

Я открыл ошибку code.google.com/p/android/issues/detail?id=59776 после того, как столкнулся с той же проблемой, что и @kriswiz, когда я использовал VideoView и Player. Теперь видео будет воспроизводиться на Nexus 7 и Samsung Nexus.