2013-08-20 3 views
5

videoview를 사용하여 동영상을 재생하고 mediacontroller를 사용하여 일시 중지, 되감기 및 앞으로 이동과 같은 제어 버튼을 사용하기위한 Android 코드가 있습니다. 그것은 넥서스 S뿐만 아니라 많은 삼성 전자 휴대 전화에서 작동하지만, mediacontroller 버튼은 넥서스 7에서 작동하지 않습니다! 모든 장치에서 작동해야합니다. 내가해야 할 여분의 것이 있습니까?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(); 
+0

이슈 트래커 링크 (현재로서는 응답 없음) : https://code.google.com/p/android/issues/detail?id=59776 – Geobits

답변

3

Unable to pause/forward/backward video using mediacontroller in android에서이 답변을 찾았습니다. 일부 LG 장치에도이 문제가있는 것으로 보입니다. (A)의 사용 서피스 뷰 SurfaceView 대신 : @Vineela Yarlagadda에서 언급 한 바와 같이

, 당신은 7


대체 솔루션 넥서스에

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

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

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

테스트 & 작품 아래 VideoView를 지켜 보면서 방법을 재정의해야 ApiDemos의 샘플 코드에서 제안 된대로 VideoView.

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); 

은 내가 VideoView를 지켜 보면서 Player를 사용할 때 @kriswiz와 같은 문제가 발생한 후 버그 code.google.com/p/android/issues/detail?id=59776을 열었다. 동영상은 Nexus 7 및 Samsung Nexus에서 재생됩니다.

+0

그래, 나는 너와 같은 게시물을 보았다 "일시 중지/전달할 수 없음/안드로이드에서 mediacontroller를 사용하여 뒤로 비디오 ". 그것을 시도하지만 나를 위해 작동하지 않았다. – kriswiz

관련 문제