안드로이드 웹앱 연습중인데 자바스크립트 alert 반응문제에 대해 질문드립니다. 정보
안드로이드 웹앱 연습중인데 자바스크립트 alert 반응문제에 대해 질문드립니다.관련링크
본문
01 |
package com.test.test; |
02 |
03 |
import android.support.v7.app.AppCompatActivity; |
04 |
import android.os.Bundle; |
05 |
import android.webkit.WebResourceRequest; |
06 |
import android.webkit.WebView; |
07 |
import android.webkit.WebViewClient; |
08 |
09 |
10 |
public class MainActivity extends AppCompatActivity { |
11 |
12 |
WebView ourBrow; |
13 |
14 |
@Override |
15 |
protected void onCreate(Bundle savedInstanceState) { |
16 |
super.onCreate(savedInstanceState); |
17 |
setContentView(R.layout.activity_main); |
18 |
19 |
ourBrow = (WebView) findViewById(R.id.webview); |
20 |
ourBrow.setWebViewClient( new MyBrowser()); |
21 |
ourBrow.getSettings().setJavaScriptEnabled(true); |
22 |
ourBrow.loadUrl( "http://www.test.com" ); |
23 |
} |
24 |
private class MyBrowser extends WebViewClient { |
25 |
@Override |
26 |
public boolean shouldOverrideUrlLoading(WebView view, String url) { |
27 |
view.loadUrl(url); |
28 |
return true; |
29 |
} |
30 |
} |
31 |
} |
로그인 화면등에서 비밀번호가 틀리거나 했을때 alrert가 떠야하는데 아무 반응이 없이 넘어가지가 않네요
final Context myApp = this;
browser.setWebChromeClient(new WebChromeClient() {
@Override
public boolean onJsAlert(WebView view, String url, String message, final android.webkit.JsResult result)
{
new AlertDialog.Builder(myApp)
.setTitle("AlertDialog")
.setMessage(message)
.setPositiveButton(android.R.string.ok,
new AlertDialog.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
result.confirm();
}
})
.setCancelable(false)
.create()
.show();
return true;
};
});
를 사용해서
ourBrow.getSettings().setJavaScriptEnabled(true); 과 ourBrow.loadUrl("http://www.test.com"); 줄 사이에
적용을 해봤는데 도무지 수정이 힘들어서 질문드립니다.
0
댓글 2개
https://github.com/lucasferreira/react-native-webview-android
올려드립니다.
lib에 보시면 alert 뜨게하는 부분이 있는데 이부분을 sweetalert 로 바꾸시고 개별페이지에서 뜨는 부분들은 각각 수정하시면 됩니다.