package Ġcom . example . lib _ base Ċ Ċ import Ġandroid . app . Application Ċ import Ġandroid . app . Progress Dialog Ċ import Ġandroid . view . Gravity Ċ import Ġandroidx . appcompat . app . AppCompat Delegate Ċ import Ġcom . alibaba . android . ar outer . launcher . AR outer Ċ import Ġcom . dr ake . net . Net Config Ċ import Ġcom . dr ake . net . interceptor . Log Record Interceptor Ċ import Ġcom . dr ake . net . interceptor . Request Interceptor Ċ import Ġcom . dr ake . net . interfaces . Net ErrorHandler Ċ import Ġcom . dr ake . net . okhttp .* Ċ import Ġcom . dr ake . net . request . Base Request Ċ import Ġcom . example . lib _ base . constant . Api Urls Ċ import Ġcom . example . lib _ base . constant . MM KV Keys Ċ import Ġcom . example . lib _ base . constant . Sdk Keys Ċ import Ġcom . example . lib _ base . net . Wan Serialization Converter Ċ import Ġcom . example . lib _ base . utils . data . MM KV Utils Ċ import Ġcom . example . lib _ base . utils . log . Log Utils Ċ import Ġcom . h jq . toast . Toast Utils Ċ import Ġcom . h jq . toast . style . White Toast Style Ċ import Ġcom . or h ano but . logger . Android Log Adapter Ċ import Ġcom . or h ano but . logger . Logger Ċ import Ġcom . sc wang . smart . refresh . footer . Class ics Footer Ċ import Ġcom . sc wang . smart . refresh . header . Material Header Ċ import Ġcom . sc wang . smart . refresh . layout . Smart Refresh Layout Ċ import Ġcom . tencent . bug ly . crash report . Crash Report Ċ import Ġcom . tencent . mm kv . MM KV Ċ import Ġjava . util . concurrent . TimeUnit ĊĊ Ċ /** Ċ Ġ* Ġ@ Create Date Ġ: Ġ 2 0 2 0 / 1 2 / 3 0 Ċ Ġ* Ġ@ Author Ġ: Ġ éĿĴ æŁ ł Ċ Ġ* Ġ@ Description Ġ: Ċ Ġ*/ Ċ open Ġclass ĠBase Application Ġ: ĠApplication () Ġ{ ĊĊĠĠĠ Ġ// å°Ĩ Application Ġ åįķ ä¾ĭ åĮĸ ï¼Į åı¯ ä¾Ľ åħ¨å±Ģ è°ĥçĶ¨ ĠContext ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġlateinit Ġvar Ġcontext : ĠBase Application ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate () ĊĊĠĠĠĠĠĠĠ Ġcontext Ġ= Ġthis ĊĊĠĠĠĠĠĠĠ Ġ// MM KV éĶ® åĢ¼ å¯¹ åŃĺåĤ¨ ĊĠĠĠĠĠĠĠ ĠM MK V . initialize ( this ) ĊĊĠĠĠĠĠĠĠ Ġ// 1 ï¼ļ æĹ¥ éĹ´ æ¨¡å¼ı ï¼Į 2 ï¼ļ å¤ ľ éĹ´ æ¨¡å¼ı ï¼Į 3 ï¼ļ è·Ł éļı ç³»ç»Ł ãĢĤ ĊĠĠĠĠĠĠĠ ĠAppCompat Delegate . setDefault Night Mode ( MM KV Utils . getInt ( MM KV Keys . N IGHT _ MODE , Ġ 1 )) ĊĊĠĠĠĠĠĠĠ Ġ// éĺ¿ éĩĮ è·¯çĶ± ĊĠĠĠĠĠĠĠ Ġif Ġ( Build Config . DEBUG ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠA Router . open Log () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠA Router . open Debug () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠA Router . init ( this ) ĊĊĠĠĠĠĠĠĠ Ġ// Bug ly å´ © æº ĥ ä¸Ĭ æĬ¥ ĊĠĠĠĠĠĠĠ ĠCrash Report . init Crash Report ( this , ĠS dk Keys . BU GL Y _ KEY , ĠBuild Config . DEBUG ) ĊĊĠĠĠĠĠĠĠ Ġ// Toast åĪĿå§ĭåĮĸ ĊĠĠĠĠĠĠĠ ĠToast Utils . init ( this ) ĊĠĠĠĠĠĠĠ ĠToast Utils . set Gravity ( Gravity . CENTER ) ĊĠĠĠĠĠĠĠ ĠToast Utils . setStyle ( White Toast Style ()) ĊĊĠĠĠĠĠĠĠ Ġ// æĹ¥å¿Ĺ æīĵåį° åĪĿå§ĭåĮĸ ĊĠĠĠĠĠĠĠ ĠLogger . add Log Adapter ( Android Log Adapter ()) ĊĊĠĠĠĠĠĠĠ Ġ// åįı ç¨ĭ ç½ĳç»ľ è¯·æ±Ĥ åºĵ åĪĿå§ĭåĮĸ ĊĠĠĠĠĠĠĠ ĠNet Config . init ( Api Urls . BASE _ W AN _ URL ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Converter ( Wan Serialization Converter ()) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ è¶ħæĹ¶ è®¾ç½® ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconnect Timeout ( 2 , ĠTimeUnit . MIN UTES ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġread Timeout ( 2 , ĠTimeUnit . MIN UTES ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwrite Timeout ( 2 , ĠTimeUnit . MIN UTES ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Log ( Build Config . DEBUG ) Ġ// ĠLog Cat å¼Ĥå¸¸ æĹ¥å¿Ĺ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Interceptor ( Log Record Interceptor ( Build Config . DEBUG )) Ġ// Ġæ·»åĬł æĹ¥å¿Ĺ è®°å½ķ åĻ¨ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Request Interceptor ( object Ġ: ĠRequest Interceptor Ġ{ Ġ// Ġæ·»åĬł è¯·æ±Ĥ æĭ ¦ æĪª åĻ¨ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġinterceptor ( request : ĠBase Request ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrequest . add Header (" client ", Ġ" Net ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Build Config . DEBUG ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrust SS LC ertificate () Ġ// Ġ ä¿¡ ä»» æīĢæľī è¯ģ ä¹¦ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// åħ¨å±Ģ è¯·æ±Ĥ éĶĻè¯¯ å¤ĦçĲĨ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset ErrorHandler ( object Ġ: ĠNet ErrorHandler Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonError ( e : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast Utils . show ( e . message ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog Utils . d (" è¯·æ±Ĥ åĩº éĶĻ ï¼ļ \ n MESSAGE :${ e . message }\ n URL :${ e . localized Message }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Dialog Factory Ġ{ Ġ// Ġ åħ¨å±Ģ åĬłè½½ å¯¹ è¯Ŀ æ¡Ĩ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠProgress Dialog ( it ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Message (" æĪĳ æĺ¯ åħ¨å±Ģ èĩªå®ļä¹ī çļĦ åĬłè½½ å¯¹ è¯Ŀ æ¡Ĩ ...") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// åĪ·æĸ° æİ§ä»¶ åĪĿå§ĭåĮĸ ĊĠĠĠĠĠĠĠ ĠSmart Refresh Layout . setDefault Refresh Header Creator Ġ{ Ġcontext , Ġlayout Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . set Primary Colors Id ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . color . color _ refresh _ bg , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . color . color _ refresh _ text ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ// åħ¨å±Ģ è®¾ç½® ä¸»é¢ĺ é¢ľèī² ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// æĮĩå®ļ ä¸º ç»ı åħ¸ Header ï¼Į é»ĺè®¤ æĺ¯ Ġ è´Ŀ å¡ŀ å°Ķ éĽ · è¾¾ Header ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMaterial Header ( context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// è®¾ç½® åħ¨å±Ģ çļĦ Footer æŀĦå»º åĻ¨ ĊĠĠĠĠĠĠĠ ĠSmart Refresh Layout . setDefault Refresh Footer Creator Ġ{ Ġcontext , Ġlayout Ġ-> Ġ// æĮĩå®ļ ä¸º ç»ı åħ¸ Footer ï¼Į é»ĺè®¤ æĺ¯ ĠBall Pulse Footer ĊĠĠĠĠĠĠĠĠĠĠĠ ĠClass ics Footer ( context ). set Drawable Size ( 2 0 f ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }