package Ġcom . br ins . bridge lib . web Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . webkit . Web Chrome Client Ċ import Ġandroid . webkit . Web Settings Ċ import Ġandroid . webkit . WebView Client Ċ import Ġcom . alibaba . android . ar outer . facade . annotation . Autowired Ċ import Ġcom . alibaba . android . ar outer . facade . annotation . Route Ċ import Ġcom . br ins . base lib . activity . Base Activity Ċ import Ġcom . br ins . base lib . route . Router Hub . Companion . BROWSER ACTIVITY Ċ import Ġcom . br ins . base lib . utils . App Utils Ċ import Ġcom . br ins . base lib . utils . UI Utils Ċ import Ġcom . br ins . base lib . utils . getStatus Bar Height Ċ import Ġcom . br ins . base lib . widget . Simple Title Bar Ċ import Ġcom . br ins . bridge lib . R Ċ import Ġkotlinx . android . synt hetic . main . activity _ browser .* Ċ import Ġw end u . ds bridge . D WebView Ċ Ċ @ Route ( path Ġ= ĠB ROW SER ACTIVITY ) Ċ class ĠBrowser Activity Ġ: ĠBase Activity () Ġ{ ĊĊĠĠĠ Ġ@ Autowired ( name Ġ= Ġ" KEY _ URL ") ĊĠĠĠ Ġlateinit Ġvar Ġm Url : ĠString ĊĠĠĠ Ġvar Ġm D WebView : ĠD WebView ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Res Id (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠR . layout . activity _ browser ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( m Url . isEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġtb _ browser . set Padding ( 0 , Ġget StatusBar Height ( this ), Ġ 0 , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġtb _ browser . setOn Title Bar ClickListener ( object Ġ: ĠSimple Title Bar . On Title Bar ClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Left Click () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Left Click () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Right Click ( view Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Right Click ( view Id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Title Click ( content : ĠString ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Title Click ( content ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġinit WebView () ĊĠĠĠĠĠĠĠ Ġinit Web Setting () ĊĠĠĠĠĠĠĠ Ġbuild WebView Client () ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġbuild WebView Client () Ġ{ ĊĠĠĠĠĠĠĠ Ġm D WebView ?. set WebView Client ( WebView Client ()) ĊĠĠĠĠĠĠĠ Ġm D WebView ?. set Web Chrome Client ( Web Chrome Client ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Web Setting () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġweb Settings : ĠWeb Settings Ġ= Ġm D WebView !!. settings ĊĠĠĠĠĠĠĠ ĠD WebView . set Web Contents Debugging Enabled ( App Utils . is App Debug ()) ĊĠĠĠĠĠĠĠ Ġ// Ġua ï¼Į æł¼å¼ı ï¼ļ ç³»ç»Ł UserAgent + ç©º æł¼ + g iao #+ key / value + ç©º æł¼ + key / value + ç©º æł¼ + key / value ...... ĊĠĠĠĠĠĠĠ Ġweb Settings . java Script Enabled Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġweb Settings . save FormData Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ// Ġ åŃĺåĤ¨ ĊĠĠĠĠĠĠĠ Ġweb Settings . cache Mode Ġ= ĠWeb Settings . LOAD _ DEFAULT ĊĠĠĠĠĠĠĠ Ġweb Settings . set App Cache Path ( UI Utils . getContext (). getCache Dir (). getAbsolutePath ()) ĊĠĠĠĠĠĠĠ Ġweb Settings . set App Cache Enabled ( false ) ĊĠĠĠĠĠĠĠ Ġ// Ġ é¡µéĿ¢ èĩª éĢĤ åºĶ ĊĠĠĠĠĠĠĠ Ġweb Settings . default Text Encoding Name Ġ= Ġ" UTF - 8 " ĊĠĠĠĠĠĠĠ Ġweb Settings . use Wide View Port Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ// Ġå½ĵ é¡µéĿ¢ å®½åº¦ å¤§äºİ WebView å®½åº¦ æĹ¶ ï¼Į ç¼© å°ı ä½¿ é¡µéĿ¢ å®½åº¦ çŃīäºİ WebView å®½åº¦ ĊĠĠĠĠĠĠĠ Ġweb Settings . load With Overview Mode Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġweb Settings . text Zoom Ġ= Ġ 1 0 0 ĊĠĠĠĠĠĠĠ Ġ// Ġæĺ¯åĲ¦ æĶ¯æĮģ å¤ļ çªĹåı£ ï¼Į é»ĺè®¤ åĢ¼ false ĊĠĠĠĠĠĠĠ Ġweb Settings . set Support Multiple Windows ( true ); ĊĠĠĠĠĠĠĠ Ġ// Ġæĺ¯åĲ¦ åı¯çĶ¨ Javascript ( window . open ) æīĵå¼Ģ çªĹåı£ ï¼Į é»ĺè®¤ åĢ¼ Ġfalse ĊĠĠĠĠĠĠĠ Ġweb Settings . set JavaScript Can Open Windows Autom atically ( true ); ĊĠĠĠĠĠĠĠ Ġ// Ġæĺ¯åĲ¦ åħģè®¸ éĢļè¿ĩ file Ġurl åĬłè½½ çļĦ Javascript è¯»åıĸ æľ¬åľ° æĸĩä»¶ ï¼Į é»ĺè®¤ åĢ¼ Ġfalse ĊĠĠĠĠĠĠĠ Ġweb Settings . set Allow File Access FromFile URLs ( false ); ĊĠĠĠĠĠĠĠ Ġ// Ġæĺ¯åĲ¦ åħģè®¸ éĢļè¿ĩ file Ġurl åĬłè½½ çļĦ Javascript è¯»åıĸ åħ¨éĥ¨ èµĦæºĲ ( åĮħæĭ¬ æĸĩä»¶ , http , https )ï¼Į é»ĺè®¤ åĢ¼ Ġfalse ĊĠĠĠĠĠĠĠ Ġweb Settings . set Allow Universal Access FromFile URLs ( false ); ĊĠĠĠĠĠĠĠ Ġ// Ġæĺ¯åĲ¦ åħģè®¸ éĢļè¿ĩ file Ġurl åĬłè½½ çļĦ Javascript è¯»åıĸ æľ¬åľ° æĸĩä»¶ ï¼Į é»ĺè®¤ åĢ¼ Ġfalse ĊĠĠĠĠĠĠĠ Ġweb Settings . set Allow File Access ( false ); ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit WebView () Ġ{ ĊĠĠĠĠĠĠĠ Ġm D WebView Ġ= ĠD WebView ( mContext ) ĊĠĠĠĠĠĠĠ Ġfl _ h 5 _ container . addView ( m D WebView ) ĊĠĠĠĠĠĠĠ Ġm D WebView !!. load Url ( m Url ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġshow Loading () Ġ{ ĊĠĠĠĠĠĠĠ ĠTODO (" Not Ġyet Ġimplemented ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġhide Loading () Ġ{ ĊĠĠĠĠĠĠĠ ĠTODO (" Not Ġyet Ġimplemented ") ĊĠĠĠ Ġ} Ċ }