package Ġcom . m izz ugi . ken si ro . app . pan ri . plugin Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . net . Connectivity Manager Ċ import Ġandroid . net . Network Info Ċ import Ġjava . net . Inet Address Ċ import Ġjava . net . Unknown Host Exception Ċ Ċ object ĠCheck Connection Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġis Reach able : ĠBoolean ? Ġ= Ġfalse ĊĠĠĠ Ġprivate Ġvar Ġthread State : ĠBoolean ? Ġ= Ġfalse ĊĊĠĠĠ Ġprivate Ġval Ġis Reach able Net wo ork s : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġinet Address Ġ= ĠInet Address . get ByName (" firebase . google . com ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġinet Address . toString (). length Ġ> Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠUnknown Host Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" DE PREC ATION ") ĊĠĠĠ Ġfun Ġis Connected ( activity : ĠContext , Ġexpired : ĠLong ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġconnectivity Manager Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . getSystem Service ( Context . CONNECT IVITY _ SERVICE ) Ġas ĠConnect ivity Manager ĊĠĠĠĠĠĠĠ Ġval Ġnetwork Info Ġ= Ġconnectivity Manager . active Network Info ĊĠĠĠĠĠĠĠ Ġif Ġ( connectivity Manager . get Network Info ( Connectivity Manager . TYPE _ MOB ILE ). state Ġ== ĠNetwork Info . State . CONNECTED Ġ|| Ġconnectivity Manager . get Network Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠConnect ivity Manager . TYPE _ WIFI ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). state Ġ== ĠNetwork Info . State . CONNECTED ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// we Ġare Ġconnected Ġto Ġa Ġnetwork ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ/* Is Network Reach able Ġis Reach able Net Ġ= Ġnew ĠIs Network Reach able (); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Reach able Net . run (); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġint Ġsp lice Ġ= ĠMath . round ( expired Ġ/ Ġ 1 0 0 ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor ( int Ġx Ġ= Ġ 0 ; Ġx Ġ< Ġsp lice ; Ġx ++) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠThread . sleep ( 1 0 0 ); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( thread State ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbreak ; ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( is Reach able Net . is Alive ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Reach able Net . interrupt (); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ; ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġis Reach able ;*/ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Reach able Ġ= Ġis Reach able Net wo ork s ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġis Reach able Net wo ork s ĊĠĠĠĠĠĠĠ Ġ} Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} Ċ Ċ }