package Ġio . ag ora . tutorials 1 v 1 v call . base Ċ Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . os . Build Ċ import Ġandroid . support . annotation . Requires Api Ċ import Ġandroid . webkit .* Ċ import Ġio . ag ora . tutorials 1 v 1 v call . Video Chat View Activity Ċ import Ġio . ag ora . u ikit . logger . Logger RecyclerView Ċ Ċ class ĠApp WebView Client ( private Ġval Ġloading Listener : ĠLoading Listener ) Ġ: ĠWebView Client () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Page Started ( view : ĠWebView ?, Ġurl : ĠString ?, Ġfav icon : ĠBitmap ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Page Started ( view , Ġurl , Ġfav icon ) ĊĠĠĠĠĠĠĠ Ġloading Listener . on WebView Page Loading Started () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Page Finished ( view : ĠWebView ?, Ġurl : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Page Finished ( view , Ġurl ) ĊĠĠĠĠĠĠĠ Ġloading Listener . on WebView Page Loading Finished () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" DE PREC ATION ") ĊĠĠĠ Ġoverride Ġfun Ġon Received Error ( view : ĠWebView ?, ĠerrorCode : ĠInt , Ġdescription : ĠString ?, Ġfailing Url : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Received Error ( view , ĠerrorCode , Ġdescription , Ġfailing Url ) ĊĠĠĠĠĠĠĠ Ġloading Listener . on WebView Page Loading Failed (" Web page Ġloading Ġfiled . Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Error Ġcode Ġ= Ġ$ errorCode Ġand Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" description Ġ= Ġ$ description ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Requires Api ( api Ġ= ĠBuild . VERSION _ CODES . M ) ĊĠĠĠ Ġoverride Ġfun Ġon Received Error ( view : ĠWebView ?, Ġrequest : ĠWeb Resource Request ?, Ġerror : ĠWeb Resource Error ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Received Error ( view , Ġrequest , Ġerror ) ĊĠĠĠĠĠĠĠ Ġloading Listener . on WebView Page Loading Failed (" Web page Ġloading Ġfiled . Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Error Ġcode Ġ= Ġ${ error ?. errorCode } Ġand Ġ" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" description Ġ= Ġ${ error ?. description }") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinterface ĠLoading Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġon WebView Page Loading Started () ĊĠĠĠĠĠĠĠ Ġfun Ġon WebView Page Loading Finished () ĊĠĠĠĠĠĠĠ Ġfun Ġon WebView Page Loading Failed ( error Msg : ĠString ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠApp Web Chrome Client ( private Ġval Ġweb Log View : ĠLogger RecyclerView ) Ġ: ĠWeb Chrome Client () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Console Message ( console Message : ĠConsole Message ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġ// do Ġnot Ġremove Ġ? ĊĠĠĠĠĠĠĠ Ġweb Log View ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( it . context Ġas ĠVideo Chat View Activity ). run On Ui Thread Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġconsole Message ?. let Ġ{ Ġconsole Message Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmessage Ġ= Ġ"${ console Message . message ()} Ġ- Ġline Ġ${ console Message . line Number () }" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( console Message . message Level ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConsole Message . Message Level . DEBUG Ġ-> Ġweb Log View . log I ( message ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConsole Message . Message Level . ERROR Ġ-> Ġweb Log View . log E ( message ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConsole Message . Message Level . WARNING Ġ-> Ġweb Log View . log W ( message ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġweb Log View . log I (( message )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . on Console Message ( console Message ) ĊĠĠĠ Ġ} Ċ } Ċ