console
JavaScript API를 사용하여 JavaScript를 디버그할 수 있습니다.
Logcat의 출력 메시지를 생성합니다. 웹 페이지를 디버깅하는 데 익숙하다면
Firebug 또는 Web Inspector를 사용한다면 console
을 사용하는 데 익숙할 것입니다.
(예: console.log()
) Android의 WebKit 프레임워크는 대부분
API에서 디버깅할 때 애플리케이션에서 로그를 수신할 수 있도록
WebView
이 주제에서는
디버깅을 위한 콘솔 API를 제공합니다.
WebView에서 콘솔 API 사용
Console API는 WebView
에서 디버깅할 때도 지원됩니다. 다음을 수행해야 합니다.
제공
다음을 구현하는 WebChromeClient
onConsoleMessage()
메서드를 사용하여 Logcat에 콘솔 메시지를 표시할 수 있습니다. 그런 다음
다음으로 WebView
(으)로 WebChromeClient
setWebChromeClient()
자세한 내용은 Webview
를 참고하세요.
문서를 참조하세요.
다음 예는 WebView
에서 콘솔 API를 사용하는 방법을 보여줍니다.
Kotlin
val myWebView: WebView = findViewById(R.id.webview) myWebView.webChromeClient = object : WebChromeClient() { override fun onConsoleMessage(message: ConsoleMessage): Boolean { Log.d("MyApplication", "${message.message()} -- From line " + "${message.lineNumber()} of ${message.sourceId()}") return true } }
자바
WebView myWebView = findViewById(R.id.webview); myWebView.setWebChromeClient(new WebChromeClient() { @Override public boolean onConsoleMessage(ConsoleMessage consoleMessage) { Log.d("MyApplication", consoleMessage.message() + " -- From line " + consoleMessage.lineNumber() + " of " + consoleMessage.sourceId()); return true; } });
또한 ConsoleMessage
에는
MessageLevel
객체
전달되는 콘솔 메시지의 유형을 나타냅니다. 다음 명령어를 사용하여
메시지 수준
messageLevel()
(으)로
메시지의 심각도를 결정한 다음 적절한
Log
메서드를 사용하거나 기타 적절한 조치를 취할 수 있습니다.
GCP 콘솔 또는
onConsoleMessage(String, int, String)
드림
또는
onConsoleMessage(ConsoleMessage)
,
웹페이지에서 콘솔 메서드를 실행하면 Android는
적절한 onConsoleMessage()
메서드를 사용하여 오류를 보고할 수 있습니다. 예를 들어 위의 예시 코드에서
Logcat 메시지가 다음과 같이 출력됩니다.
Hello World -- From line 82 of http://www.example.com/hello.html
다음은 디버깅과 관련된 추가 리소스입니다.
실험용 웹 기능 테스트
Chrome의 chrome://flags
페이지와 유사하게 실험용
WebView
의 웹 기능
이렇게 하려면 다음 단계를 따르세요.
WebView
출시 전 버전 중 하나 설치 채널 (베타, 개발자, 카나리아){: .external}.WebView
전환 채널 설치해야 합니다.WebView DevTools 런처를 클릭합니다.
DevTools에서 Flags를 클릭하고 실험용 기능을 검색합니다. 선택합니다. 변경사항은 다음 인스턴스의 모든
WebView
인스턴스에 적용됩니다. 있습니다.앱을 중지했다가 다시 시작하여 새로운 기능으로 테스트를 시작하세요.
플래그 전환에 관한 자세한 내용은 WebView
DevTools를 참조하세요.
문서를 참조하세요.