package Ġcom . it ach i 1 7 0 6 . che e sec ake utilities Ċ Ċ import Ġandroid . app . Activity Ċ import Ġandroid . app . Task Stack Builder Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . google . firebase . crash ly t ics . Firebase Crash ly t ics Ċ import Ġcom . it ach i 1 7 0 6 . che e sec ake utilities . features . bio metric Auth . Authentication Activity Ċ import Ġcom . it ach i 1 7 0 6 . che e sec ake utilities . util . Common Methods Ċ import Ġcom . it ach i 1 7 0 6 . che e sec ake utilities . util . Log Init . init Logger Ċ import Ġcom . it ach i 1 7 0 6 . helper lib . helpers . Log Helper Ċ import Ġcom . it ach i 1 7 0 6 . helper lib . helpers . Pref Helper Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠK enne th Ġon Ġ 1 2 / 5 / 2 0 1 9 . Ċ Ġ* Ġfor Ġcom . it ach i 1 7 0 6 . che e sec ake utilities Ġin ĠChe e sec ake Utilities Ċ Ġ*/ Ċ abstract Ġclass ĠBase Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġabstract Ġval Ġhelp Description : ĠString ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠREQUEST _ AUTH Ġ= Ġ 3 ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠREQUEST _ AUTH _ GLOBAL Ġ= Ġ 4 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsp Ġ= ĠPref Helper . getDefault SharedPreferences ( this ) ĊĠĠĠĠĠĠĠ ĠPref Helper . handle Default Theme Switch ( sp . getString (" app _ theme ", Ġ" battery default ") !! ) ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ ĠFirebase Crash ly t ics . getInstance (). set Crash ly t ics Collection Enabled (! Build Config . DEBUG ) ĊĠĠĠĠĠĠĠ Ġinit Logger () ĊĠĠĠĠĠĠĠ Ġval Ġmenu item Ġ= Ġif Ġ( this . intent . has Extra (" menu item ")) Ġthis . intent . extras !!. getString (" menu item ", Ġ"") Ġelse Ġ"" ĊĠĠĠĠĠĠĠ Ġval Ġcheck Global Ġ= Ġthis . intent . has Extra (" global check ") Ġ&& Ġthis . intent . extras !!. getBoolean (" global check ") ĊĠĠĠĠĠĠĠ Ġval Ġauth again Ġ= Ġ! this . intent . has Extra (" auth again ") Ġ|| Ġthis . intent . extras !!. getBoolean (" auth again ") ĊĠĠĠĠĠĠĠ Ġif Ġ(! auth again ) Ġreturn ĊĠĠĠĠĠĠĠ Ġif Ġ(!( menu item Ġ== Ġnull Ġ|| Ġmenu item . isEmpty () Ġ|| Ġmenu item Ġ== Ġ"")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! Common Methods . is Global Locked ( sp ) Ġ&& ĠCommon Methods . is Utility Locked ( sp , Ġmenu item )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog Helper . i (" Authentication ", Ġ" Request ing ĠUtility ĠAuthentication Ġfor Ġ$ menu item ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity For Result ( Intent ( this , ĠAuthentication Activity :: class . java ), ĠREQUEST _ AUTH ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( check Global ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Common Methods . is Global Locked ( sp )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog Helper . i (" Authentication ", Ġ" Request ing ĠAuthentication Ġas Ġapp Ġis Ġlocked Ġglobally ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity For Result ( Intent ( this , ĠAuthentication Activity :: class . java ), ĠREQUEST _ AUTH _ GLOBAL ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Result ( request Code : ĠInt , ĠresultCode : ĠInt , Ġdata : ĠIntent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Result ( request Code , ĠresultCode , Ġdata ) ĊĠĠĠĠĠĠĠ Ġif Ġ( request Code Ġ== ĠREQUEST _ AUTH ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result Code Ġ== ĠActivity . RESULT _ C ANCE LED ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfinish () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( request Code Ġ== ĠREQUEST _ AUTH _ GLOBAL ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result Code Ġ== ĠActivity . RESULT _ C ANCE LED ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfinish Affinity () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( result Code Ġ== ĠActivity . RESULT _ OK ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTask Stack Builder . create ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Parent Stack ( MainMenu Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Next Intent ( Intent ( this , ĠMain Menu Activity :: class . java ). putExtra (" auth again ", Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Next Intent ( Intent ( this , Ġthis . java Class ). putExtra (" auth again ", Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. start Activities () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ