2012-07-30 3 views
0

내 응용 프로그램에서 웹 페이지를로드해야합니다. 이 페이지에는 비디오 플레이어가 포함되어 있습니다. 이것은 내 코드입니다 :안드로이드, 왜 컴퓨터의 브라우저가 재생되는 동안 모바일 브라우저가 비디오를 재생할 수 없습니까?

webView = (WebView) findViewById(R.id.webView); 
webView.getSettings().setJavaScriptEnabled(true); 
webView.loadUrl("http://astroapps.static.appxtream.com/resepi_video.php?mediaId=209375&height=400&width=240"); 

또한 manifest 파일에서 하드웨어 가속을 활성화했습니다.

<activity android:name = ".WebVideoPlayer" android:hardwareAccelerated="true"/> 

응용 프로그램을 시작하면 화면에 배경이 표시되고, 클릭하면 화면에 표시됩니다. 컴퓨터의 브라우저에서 위의 링크를 복사/붙여 넣으면 비디오가 표시됩니다. 내 실수는 무엇입니까?

의견을 보내 주시면 감사하겠습니다. 감사합니다.

+0

아마도 2 개의 다른 브라우저일까요? –

+0

감사합니다. Anders, 모바일 용 네이티브 브라우저입니다. PC에서 나는 크롬 브라우저를 사용하고 있습니다. – Hesam

답변

1

혼란 스럽습니다. Hans와 Rocel은 비디오가 Flash Player (최소한 브라우저에서는)를 필요로한다고 지적합니다. 그러나 영화 플레이어 출처는 Android에서 HTML5를 사용한다고 말합니다. 그래서 어떤가? 모든 래퍼 레이어가 없어도 비디오 자체를 얻을 수 있습니까?

더 :

이는 Movideo 플레이어의 버그인가? 그것 안드로이드에 플래시를 선호하는 경우 (그 경우 위의 기여자의 조언을 플래시를 설치하는 돈을 오른쪽에있을 것입니다),하지만 배열은 뒤로 나타납니다.

var AndroidApplicationAliasResolver = function() { 

    // ordering is important! 
    // has flash, use first available of flash and android 
    // has not flash, android 

    var search, 
     types = [ 
      { name:'android', useHTML5:true }, 
      { name:'flash',  useHTML5:false } 
     ]; 
    ... 

더 : 브라우저에서 볼 때, 비디오 플레이어에 대한 데이터를 보유하고 <div>가 :

좋아, 나는이 많이 알고있다. 이 인스턴스는 다음과 같이 인스턴스화되고 재생됩니다. <script>.

(PC/Mac) 웹 브라우저에서이 <div>에는 Flash 비디오 플레이어를 지정하는 데 필요한 정보가 들어 있습니다.

Android 기기에서이 <div>은 단순히 비어 있습니다. 웹 페이지가 작동하지 않는 경우 <div> 본문을 DOM에 삽입해야하는 동영상 플레이어의 코드입니다.

즉, 동영상이 재생되지 않는 이유입니다.

이 모든 것을 어떻게 배웠습니까?

Android의 Chrome 웹 브라우저에서 제공 한 URL이 열렸습니다. 그런 다음 지침에 따라 remote debugging을 켜고 Android 버전의 HTML을 검사하여 데스크톱 버전과 비교했습니다.

+0

감사합니다. Sparky, 감사합니다. 저작권 문제 동영상 제공 업체는 우리가 직접 동영상에 액세스하도록 허용하지 않습니다. – Hesam

+0

나는 당신과 동의합니다. 이것은 html입니다. 5. 서버는 장치를 인식하고 유형에 따라 비디오를로드합니다. 나는 플래시 플레이어가 아니어야한다고 확신한다. – Hesam

+0

감사합니다 스파키, 네 말이 맞아. AppAlias ​​: {iphone : "iPhone", android : "Android", flash : "FlashApp"}에서 appAlias ​​: {iphone : "iPhone", flash : "FlashApp", android : "Android }. 이제 괜찮아요. 다시 고마워요. – Hesam

1

코드에서 URL을 확인했는데 페이지에 플래시 비디오 플레이어가있는 것 같습니다. 휴대 전화/에뮬레이터에 플래시가 없거나 플래시가 지원되지 않을 수 있습니다.

+0

감사합니다 한스,하지만 난 그 HTML 5 플레이어를 생각합니다. 또 다른 이유는 내 장치에 플래시 플레이어가 설치되어 있기 때문입니다. 브라우저가 페이지를로드하지 않을 때이 플레이어는 플래시 플레이어가 아니어야합니다. – Hesam

1

이것은 플래시 비디오이므로 플래시 플러그인을 활성화해야합니다. mWebView.getSettings(). setPluginsEnabled (true);

+0

감사합니다. 그러나 Rocel은이 방법이 Android 4.1 라이브러리의 마지막 릴리스에서 제공되지 않습니다. 이런 다른 방법을 아십니까? – Hesam

+0

예, 실제로이 메소드 대신 setPluginState (WebSettings.PluginState)가 사용되지 않습니다. http://developer.android.com/reference/android/webkit/WebSettings.html#setPluginsEnabled%28boolean%29 – Rocel

0

먼저 기기의 플래시 플레이어 플러그인을 here:에서 설치하고 위의 코드를 확인하십시오. 기본적으로 모바일 브라우저는 google chrome-lite를 사용합니다.

+0

Zoombie, 고마워요.하지만 HTML 5 플레이어라고 생각합니다. 또 다른 이유는 내 장치에 플래시 플레이어가 설치되어 있기 때문입니다. 브라우저가 페이지를로드하지 않을 때이 플레이어가 없어야합니다. 플래시 플레이어. – Hesam

관련 문제