반응형
binding.webView.settings.apply {
setSupportMultipleWindows(false) // 새창 띄우기 허용
setSupportZoom(false) // 화면 확대 허용
javaScriptEnabled = true // 자바스크립트 허용
javaScriptCanOpenWindowsAutomatically = false // 자바스크립트 새창 띄우기 허용
loadWithOverviewMode = true // html의 컨텐츠가 웹뷰보다 클 경우 스크린 크기에 맞게 조정
useWideViewPort = true // html의 viewport 메타 태그 지원
builtInZoomControls = false // 기본적으로 줌 기능이 되지 않습니다.
displayZoomControls = false // 화면 확대/축소 허용
layoutAlgorithm = WebSettings.LayoutAlgorithm.SINGLE_COLUMN // 컨텐츠 사이즈 맞추기
cacheMode = WebSettings.LOAD_NO_CACHE // 브라우저 캐쉬 허용
domStorageEnabled = true // 로컬 저장 허용
databaseEnabled = true
/**
* * This request has been blocked; the content must be served over HTTPS
* * https 에서 이미지가 표시 안되는 오류를 해결하기 위한 처리
* */
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
mixedContentMode = WebSettings.MIXED_CONTENT_ALWAYS_ALLOW
}
}
binding.webView.apply {
webViewClient = WebViewClient() // WebView 위젯을 사용해 여러 기능 사용
webChromeClient = WebChromeClient() // 브라우저 크롬에 특화
}
출처: https://yoon-dailylife.tistory.com/109 [알면 쓸모있는 개발 지식:티스토리]
만약 이렇게 설정하고 나서 웹뷰를 확인했을때 웹뷰 축소나 웹뷰 범위가 작게 보인다면 웹쪽 문제이므로 웹에서 확인해야한다
그리고 그 주소를 복사해서 크롬에서도 확인하여야한다
그리고 개발자모드에서 레이아웃 범위 표시가 있기 때문에 그걸로도 테스트가 가능하다는 점
그리고 웹에서도 디버깅이 가능하니 F12를 눌러서 디버깅 하면 되며
테스팅 할 때 값도 변경해서 수정할 수 있다
내 문제는 안드로이드에서 문제가 아닌 웹에서 문제가 생겨서 웹에서 호출 순서 때문에 문제가 생겼다
그래서 호출 순서를 고칠 수 없기 때문에 현재 사용기기 타입이 어떤건지에 따라서 높이 설정을 변경해주었다
https://developer.android.com/develop/ui/views/layout/webapps/webview?hl=ko&authuser=1
반응형
'Android Studio' 카테고리의 다른 글
Android | Activity, Fragment, View, Intent, Context (0) | 2024.12.11 |
---|---|
Android Studio + Kotlin | 옛 프로젝트에서 프로필 이미지 변경 안되는 현상 (0) | 2024.12.09 |