package Ġcom . feb ers . uest c _ bbs . http . client Ċ Ċ import Ġandroid . webkit . Cookie Manager Ċ import Ġokhttp 3 . Ok HttpClient Ċ import Ġjava . util . concurrent . TimeUnit Ċ import Ġokhttp 3 . Cookie Ċ import Ġokhttp 3 . Http Url Ċ import Ġcom . feb ers . uest c _ bbs . My App Ċ import Ġokhttp 3 . Cookie Jar ĊĊĊ Ċ object ĠWebView Client Ġ{ ĊĊĠĠĠ Ġfun Ġget (): ĠOk HttpClient Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOk HttpClient . Builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. connect Timeout ( 1 8 , ĠTimeUnit . SECONDS ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. read Timeout ( 1 8 , ĠTimeUnit . SECONDS ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. cookie Jar ( My Cookies Manager ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () Ċ } Ċ Ċ class ĠMy Cookies Manager Ġ: ĠCookie Jar Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġcookie Store Ġ= ĠPersistent Cookie Store ( My App . context ()) ĊĠĠĠ Ġprivate Ġval Ġcookie Manager Ġ= ĠCookie Manager . getInstance () ĊĊĠĠĠ Ġoverride Ġfun Ġsave From Response ( url : ĠHttp Url , Ġcookies : ĠList < Cookie >) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( cookies . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( item Ġin Ġcookies ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcookie Store . add ( url , Ġitem ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcookie Manager . set Cookie ( url . toString (), Ġitem . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠString Ġcookie Str Ġ= Ġitem . name () Ġ+ Ġitem . value ()+ "; domain ="+ item . domain (); ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcookie Manager . set Cookie ( url . toString (), Ġcookie Str ); Ġ// ä¸º webview æ·»åĬł ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġload For Request ( url : ĠHttp Url ): ĠList < Cookie > Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġcookies Ġ= Ġcookie Store . get ( url ) ĊĠĠĠĠĠĠĠ Ġval Ġcookies Str Ġ= Ġcookie Manager . get Cookie ( url . toString ()) ĊĠĠĠĠĠĠĠ Ġif Ġ( cookies Str Ġ!= Ġnull Ġ&& Ġcookies Str !!. isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcookie Headers Ġ= Ġcookies Str !!. split ("; ". to Regex ()). drop Last While ({ Ġit . isEmpty () Ġ}). to Typed Array () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcookies Ġ= ĠArrayList ( cookie Headers . size ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfor Ġ( header Ġin Ġcookie Headers ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcookies . add ( Cookie . parse ( url , Ġheader )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġcookies ĊĠĠĠ Ġ} Ċ }