2016-06-22 5 views
1

우리는 안드로이드 장치가 있습니다. 해당 장치 내부, 내부 플래시에 다운로드 폴더에 위치하며, 해당 폴더 안에있는 cat.mp4 우리는 다음과 같은 사용 스크립트 현재동영상 태그를 통해 Android WebView의 다운로드 폴더에있는 mp4 파일을 재생할 수 있습니까?

: 우리는 또한 다음과 같은 스크립트 시도

<video width="365" height="200" autoplay loop controls autobuffer> 
    <source src="file:///sdcard/Download/cat.mp4" type='video/mp4'> 
</video> 

를 :

<video width="365" height="200" src="file:///sdcard/Download/cat.mp4" autoplay loop controls autobuffer> 
</video> 

두 스크립트 모두 로컬 비디오 파일을 재생하지 않습니다.

위의 비디오 태그가 포함 된 html 파일 자체는 특정 원격 위치 (로컬이 아닌)에서 제공됩니다.

웹보기에서 지역 mp4 파일을 재생하려면이 올바른 방법인가 (우리가 아무 문제없이 재생 원격 위치에 cat.mp4를 배치 할 경우)? 그렇지 않으면 코드의 어느 부분이 잘못 되었습니까?

답변

1

WebView에서 로컬 mp4 파일을 재생하는 올바른 방법입니까?

아니요, 일반적으로 할 수는 없습니다 (webView 여부). 보안 조치 (HTML 프로토콜)는 웹 기반 응용 프로그램이 하드 드라이브 (또는 다른 저장소)에서 사용자의 파일에 액세스하는 것을 허용하지 않습니다.

사용자는 파일 자체를 선택하여 액세스를 허용해야합니다 (따라서 어떤 웹 사이트에서는 찾아보기/선택 파일 옵션). 만 옵션은 다음과 같습니다

  • 넣어 HTML 및 비디오 파일을 온라인으로 당신이 당신의 접근 돌려서과 src="cat.mp4"

측면 문제를 사용할 수있는 SD 카드의 다운로드 폴더에

  • 넣어 HTML (웹에서 모든 것을로드) 질문, SD 카드에 이러한 파일이없는 사이트 방문자는 어떻게됩니까? 또는 안드로이드를 사용하지 않는 사용자 (Win PC에서 브라우저가 어떻게 표현할 수 있습니까?)

  • +0

    이것은 가장 우아한 해결책은 아니지만 이것이 해결책입니다. 장치에 일부 경량 서버를 설치했습니다. 해당 서버에 내 파일을 업로드하고 다음과 같이 참조하십시오. src = "localhost : [some port] /cat.mp4"일부 mp4 파일이 장치에서 재생되지 않았기 때문에 비디오 형식을 변경했습니다. 이제 webm 형식을 사용합니다. . –

    +0

    귀하의 기기 (외부 인터넷 사용자 없음)에서 작동해야하지만 브라우저를 통해 표시해야하는 항목입니까? 그렇다면 왜 내 ** 옵션 2 **로 가지 않을까요? ** mySite **라는 SD 카드에 폴더를 만들고 html 파일과 비디오 파일을 거기에 넣습니다. 그런 다음 html의 비디오 태그는'src = "cat.mp4"'또는'src = "cat.webm"'에 액세스합니다 (폴더 경로가 없음). 로컬 html 파일은 같은 위치에있는 파일에 액세스해야합니다. –

    +0

    예, 내 html 파일은 다른 서버에 있습니다. 다운로드 폴더 안에 넣을 수 없습니다. 또한 내 웹 페이지에서 iframe 태그 ('src'특성)를 통해 로컬 (html) 파일을 참조하려고했으나이 중 하나가 작동하지 않았습니다. –