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