마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

동영상재생 질문 있습니다

0 추천

html5와 jquery를 이용한 하이브리드 웹앱(?)을 하고 있습니다

동영상 재생에 문제가 있어서 질문드립니다

상황은 크롬과 같은 pc 브라우져에서는 재생이 잘 되지만 기기에서는 동영상 재생이 안됩니다

기기의 브라우져에서 동영상의 직링크를 입력 시 영상은 재생되지만 앱 내에서는 안돼서 videoView 액티비티를 추가해주었습니다.

 

http://stackoverflow.com/questions/4200011/video-streaming-and-android

위 링크를 보고 설정을 해주고 추가로 

MainActivity.java 파일에 

webview.addJavascriptInterface(new Object() {
//비디오플레이어 호출
@JavascriptInterface
            public void viewVideo(String idx) {
            SharedPreferences pref = getSharedPreferences("pref", MODE_PRIVATE);
        SharedPreferences.Editor editor = pref.edit();
                editor.putString("idx", idx);
                editor.commit();
Intent intent = new Intent(MainActivity.this, VideoPlayerActivity.class);
intent.setDataAndType(Uri.parse(idx), "video/*"); // 임시
startActivity(intent);
            }
}, "AppInterface");
}
 
부분을 추가해줬습니다
 
그리고 html파일에서 버튼 클릭 시 아래의 펑션을 타게 했고 idx값으로 파일이름을 넘겨주고 있습니다.
 
function fn_view(idx)
{
       AppInterface.viewVideo(idx);
}
 
지식이 많이 부족한 상태로 하려니 문제가 되는데요...
 
현재는 AppInterface가 자꾸 정의되지 않았다고 뜨네요 분명 되어있는데 ㅜㅜ
 
참고가 될 만한 곳이 있을까요? 도와주세요

 

미설정 (240 포인트) 님이 2014년 1월 28일 질문

1개의 답변

0 추천

자바 스크립트에서 안드로이드 메소드를 호출하는 부분에 수정이 필요해 보이네요.

 

AppInterface.viewVideo(idx);로 바로 호출할 수 없습니다. 앞에 window를 붙여서 window.appInterface.viewVideo(idx)로 호출해보세요.

 

아래 링크를 참고하세요.

 

http://stackoverflow.com/questions/10389572/call-java-function-from-javascript-over-android-webview

 

 

방귀과장 (18,940 포인트) 님이 2014년 1월 28일 답변
말씀해주신대로 해봤더니 viewVideo가 정의되지 않았다고 뜨네요
분명 정의해놨는데....
일주일 넘게 헤메고 있으니 소스가 자꾸 눈에서 멀어집니다ㅜㅜ
...