public static int playVideo( int bState ) {
MainRef.mVideoView.setVideoURI(Uri.parse("http://1.243.193.251:8008/external/Movie/prologue.mp4"));
MainRef.mVideoView.setVisibility(View.VISIBLE);
MainRef.mVideoView.start();
MainRef.mVideoView.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
MainRef.mVideoView.setVisibility(View.INVISIBLE);
return false;
}
});
// 동영상 재생이 완료된걸 알수있는 리스너
MainRef.mVideoView.setOnCompletionListener(new OnCompletionListener() {
// 동영상 재생이 완료된후 호출되는 메서드
public void onCompletion(MediaPlayer player) {
MainRef.mVideoView.setVisibility(View.INVISIBLE);
}
});
return 1;
}
@Override protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
MainRef = this;
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
if (hasGLES20()) {
mGLView = new GL2JNIView(this);
bSuccess = true;
} else {
// Time to get a new phone, OpenGL ES 2.0 not supported.
CantRunningMessage();
}
if( bSuccess )
{
FrameLayout frameLayout = new FrameLayout(this);
frameLayout.addView(mGLView, new FrameLayout.LayoutParams(FrameLayout.LayoutParams.FILL_PARENT,FrameLayout.LayoutParams.FILL_PARENT));
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
SetBrightness();
mVideoView = new VideoView(this);
mVideoView.setVisibility(View.INVISIBLE);
frameLayout.addView(mVideoView, new FrameLayout.LayoutParams(FrameLayout.LayoutParams.FILL_PARENT,FrameLayout.LayoutParams.FILL_PARENT));
setContentView(frameLayout);
}
안드로이드 게임을 진행하는 도중에
중간에 삽입되는 동영상을 play시켜야 하는데요.
http://sudarnimalan.blogspot.kr/2012/06/android-play-video-on-top-of.html
여기를 참고해서 코드를 작성했는데..
이상하게 저희게임에서는 튕기네요 ㅠㅠ
저 링크에있는 소스처럼
일단 FrameLayout을 만들고..
그 레이아웃에 저희 게임이 보여지는 메인 OpenGlView와 비디오뷰를 addview했습니다.
그리고 게임에서 동영상을 play시키는 자바함수를 call하면
비디오뷰를 setVisibility(View.VISIBLE)로 설정하고
start()하거든요.
근데 여기서 항상 튕기네요.
게임이 중단되어버립니다.
제가 뭔가 잘못한건지.. ㅠㅠ 어떤방법을 써야
게임도중에 동영상을 플레이시킬 수 있는지요?
혹시나 해서 소스코드에서 뷰 초기화하는 부분과
동영상 플레이 함수도 올려봤습니다.
부디 답변해주세요 ㅠㅠ 급합니다. ㅠㅠ