티스토리 뷰
Stack Overflow에 자주 검색, 등록되는 문제들과 제가 개발 중 찾아 본 문제들 중에서 나중에도 찾아 볼 것 같은 문제들을 정리하고 있습니다.
Stack Overflow에서 가장 먼저 확인하게 되는 가장 높은 점수를 받은 Solution과 현 시점에 도움이 될 수 있는 가장 최근에 업데이트(최소 점수 확보)된 Solution을 각각 정리하였습니다.
아래 word cloud를 통해 이번 포스팅의 주요 키워드를 미리 확인하세요.
JavaScript alert not working in Android WebView
Android WebView에서 JavaScript alert가 작동하지 않습니다
문제 내용
In my application I am using WebView
and in that I am using JavaScript alert( )
method but its not working, no pop-up appears.
제 애플리케이션에서 WebView를 사용하고 있으며, 그 안에서 JavaScript alert() 메서드를 사용하고 있지만, 팝업이 나타나지 않습니다.
in my manifest file I have added
AndroidManifest.xml 파일에는 다음을 추가했습니다.
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
and in activity file I have added
액티비티 파일에는 다음을 추가했습니다.
mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("file:///android_asset/demo.html");
In layout xml file I have added
layout XML 파일에는 다음을 추가했습니다.
<WebView
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
Any clue how to enable full JavaScript
in WebView
?
WebView에서 전체 JavaScript를 활성화하는 방법이 있을까요?
Update
업데이트
Thanks mark
the alert()
method in the html
file are working now :) .
마크에게 감사드립니다. html 파일의 alert() 메서드가 작동합니다 :).
Now there are two issues in WebView
:
1: I am using a <textarea>
in the html file that i am loading in WebView
, and trying to write in Hindi language font in it, but when i try to write Hindi text it displays as symbols ( rectangle symbols like [] ) .
이제 WebView에서 두 가지 문제가 있습니다.
1: WebView에서 로드하는 html 파일에서 <textarea>를 사용하여 힌디어 글꼴로 작성하려고 할 때, 힌디어 텍스트를 작성하려고 하면 기호(대괄호 기호처럼 [])가 표시됩니다.
when i do the same in firefox browser on desktop it works fine. any clue how to give support for multiple language in textarea
in WebView
?
데스크톱의 Firefox 브라우저에서 동일한 작업을 하면 잘 작동합니다. WebView의 textarea에서 여러 언어를 지원하는 방법이 있을까요?
2: When I am clicking submit and trying to open the value of text in alert()
method in another java script it doesn't work , does it mean even after using WebChromeClient
its applicable only for current loaded html page and not javascripts
called from that page ?
2: 제출을 클릭하고 alert() 메서드에서 다른 자바스크립트의 텍스트 값을 열려고 하면 작동하지 않습니다. WebChromeClient를 사용하더라도 현재 로드된 html 페이지에만 적용되는 것일까요?
높은 점수를 받은 Solution
As others indicated, setting the WebChromeClient is needed to get alert()
to work. It's sufficient to just set the default WebChromeClient():
다른 사용자들이 말한 것처럼, alert()를 작동하려면 WebChromeClient를 설정해야 합니다. 기본 WebChromeClient()를 설정하는 것으로 충분합니다.
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.setWebChromeClient(new WebChromeClient());
Thanks for all the comments below. Including John Smith's who indicated that you needed to enable JavaScript.
아래의 모든 댓글에 감사드립니다. JavaScript를 활성화해야 한다는 점을 지적한 John Smith의 댓글을 포함하여.
가장 최근 달린 Solution
webView.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
return super.onJsAlert(view, url, message, result);
}
});
출처 : https://stackoverflow.com/questions/5271898/javascript-alert-not-working-in-android-webview
'개발 > 안드로이드' 카테고리의 다른 글
액티비티 종료하기 전에 대화상자 띄워 재확인하기 (0) | 2023.02.22 |
---|---|
어떤 동작을 클릭했을 때 알림(notification)을 제거하기 (0) | 2023.02.21 |
SharedPreferences.onSharedPreferencesChangeListener가 일관되게 호출되지 않는 문제 (0) | 2023.02.21 |
Espresso를 사용하여 다이얼로그가 표시되는지 확인하는 방법 (0) | 2023.02.20 |
안드로이드 뷰에서 발생하는 "Error parsing XML: unbound prefix" 오류 수정하기 (0) | 2023.02.19 |