在Android端,Cordova創建的app在初始化webview的時候,會創建WebViewClient和WebChromeClient,它們具有不同的作用。
WebViewClient:
WebViewClient幫助WebView處理各種通知、請求事件的,具體來說包括:
onLoadResource()
onPageStarted()
onPageFinished()
onReceiveError()
onReceivedHttpAuthRequest()
WebChromeClient
WebChromeClient是輔助WebView處理Javascript的對話框,網站圖標,網站title,加載進度等
onCloseWindow(關閉WebView)
onCreateWindow()
onJsAlert (WebView上alert是彈不出來東西的,需要定制你的WebChromeClient處理彈出)
onJsPrompt()
onJsConfirm()
onProgressChanged()
onReceivedIcon()
onReceivedTitle()
在JS和原生交互時候,WebChromeClient非常重要。