안드로이드 웹보기 라이브 전체 화면 시계에서 전체 화면 비디오를 볼

1. 변경 매니페스트 파일

당신이 웹보기에 배치되는 문에서 활동은 다음과 같은 코드를 추가 :

안드로이드 : hardwareAccelerated = "true"로

안드로이드 : configChanges = "오리엔테이션 | 화면 크기 | keyboardHidden"

2. 자바 클래스 변경

1. 웹보기 초기화 설정 :

@JavascriptInterface

개인 무효 initWebView () {

WebSettings mWebSettings mWebView.getSettings = ();

mWebSettings.setSupportZoom (TRUE);

mWebSettings.setLoadWithOverviewMode (TRUE);

mWebSettings.setUseWideViewPort (TRUE);

mWebSettings.setDefaultTextEncodingName ( "UTF-8");

mWebSettings.setLoadsImagesAutomatically (TRUE);

mWebSettings.setBlockNetworkImage (거짓); // 표시되지 않습니다 사진을 해결

mWebSettings.setTextZoom (100); // 기본 줌 레벨을 설정 페이지 변경 글꼴 크기를 방지하기 위해 시스템에 따라

@ {// 대기중인 프로젝트

mWebSettings.setAllowFileAccess (TRUE);

mWebSettings.setJavaScriptCanOpenWindowsAutomatically (TRUE);

(참) mWebSettings.setDomStorageEnabled; // 보존해야하며, 그렇지 않으면 Youku의 동영상을 재생할 수없는 경우, 다른 OK

{시도

경우 (Build.VERSION.SDK_INT> = 16) {

클래스는 clazz에 mWebSettings.getClass을 () =;

방법 방법은 clazz.getMethod ( "setAllowUniversalAccessFromFileURLs"을 boolean.class) =;

경우 (방법! = NULL) {

method.invoke (mWebSettings, TRUE);

}

}

} 캐치 (예외 전자) {

e.printStackTrace ();

}

mWebSettings.setPluginState (WebSettings.PluginState.ON);

CookieManager에 CookieManager에 CookieManager.getInstance = ();

cookieManager.setAcceptCookie (TRUE);

// @}

// JS 메서드를 호출합니다. 안드로이드 버전이 17보다 큰 경우, 주석을 추가 @JavascriptInterface

(참) mWebSettings.setJavaScriptEnabled;

경우 (Build.VERSION.SDK_INT> = Build.VERSION_CODES.LOLLIPOP) {

mWebSettings.setMixedContentMode (android.webkit.WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);

}

mWebView.setWebChromeClient (webChromeClient);

}

재산이 없어도되는 보류중인 프로젝트를 표시하도록 설정되어 용지에 영향을주지 않는 기능을 구현했다. 뉴웰 에이전트 응용 프로그램

2. 크롬 에이전트를 달성하기 위해 :

WebChromeClient webChromeClient = 새로운 WebChromeClient () {

WebChromeClient.CustomViewCallback mCallback;

@우세하다

공공 무효 onShowCustomView (보기보기, CustomViewCallback 콜백) {

) (전체 화면;

mCallback = 콜백;

super.onShowCustomView (뷰 콜);

}

@우세하다

공공 무효 onHideCustomView () {

) (전체 화면;

super.onHideCustomView ();

}

};

개인 무효가 전체 화면 () {

경우 (의 GetResources (). getConfiguration를 (). 배향 == Configuration.ORIENTATION_PORTRAIT) {

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);

LogUtil.i (TAG + "横 屏");

} 다른 {

setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

LogUtil.i (TAG + "竖 屏");

}

}

3. 재 작성 방법의 onConfigurationChanged :

@우세하다

공공 무효의 onConfigurationChanged (구성 newConfig) {

super.onConfigurationChanged (newConfig);

스위치 (newConfig.orientation) {

경우 Configuration.ORIENTATION_LANDSCAPE :

.하여 GetWindow () CLEARFLAGS (WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);

.하여 GetWindow () addFlags (WindowManager.LayoutParams.FLAG_FULLSCREEN);

단절;

경우 Configuration.ORIENTATION_PORTRAIT :

.하여 GetWindow () CLEARFLAGS (WindowManager.LayoutParams.FLAG_FULLSCREEN);

.하여 GetWindow () addFlags (WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);

단절;

}

}

OK, 당신은 라이브 플랫폼을 열려면이 페이지에 링크를 복사 한 다음 라이브 테스트를보기 위해 전체 화면을 클릭 할 수 있습니다! 완료 붙여 넣은 후 위의 단계를 수행하면됩니다.

추천

출처blog.51cto.com/14511863/2477578