/* Ċ Ġ* ĠCopyright Ġ 2 0 1 7 ĠThe ĠHy ve Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġorg . rad arc ns . detail Ċ Ċ import Ġandroid . content . Broadcast Receiver Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Build Ċ import Ġandroid . provider . Settings Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . core . app . Notification Compat . CATEGORY _ ALARM Ċ import Ġcom . google . firebase . crash ly t ics . Firebase Crash ly t ics Ċ import Ġorg . radar base . android . Rad ar Application . Companion . radar App Ċ import Ġorg . radar base . android . util . Bo ast Ċ import Ġorg . radar base . android . util . Notification Handler . Companion . NOTIFICATION _ CHANNEL _ ALERT Ċ Ċ /** Ċ Ġ* ĠStarts ĠMainActivity Ġon Ġboot Ġif Ġconfigured Ġto Ġdo Ġso Ċ Ġ*/ Ċ class ĠMainActivity Boot Starter Ġ: ĠBroadcast Receiver () Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġon Receive ( context : ĠContext , Ġintent : ĠIntent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(( context . application Context Ġas ĠRad ar Application Impl ). isIn Foreground ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġwhen Ġ( intent . action ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIntent . ACTION _ MY _ PACKAGE _ REPL AC ED Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . start App () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBo ast . makeText ( context , ĠR . string . app Updated , ĠToast . LENGTH _ LONG ). show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIntent . ACTION _ BOOT _ COMPLETED , Ġ" android . intent . action . QU ICK BOOT _ POWER ON " Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . start App () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠContext . start App () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . M Ġ&& Ġ! Settings . can Draw Overlay s ( this )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradar App . notification Handler . notify ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠBO OT _ START _ NOTIFICATION _ ID , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel Ġ= ĠNOT IFICATION _ CHANNEL _ ALERT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinclude Start Intent Ġ= Ġtrue , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Content Title ( getString ( R . string . boot start _ title )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Content Title ( getString ( R . string . boot start _ text )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Category ( CATEGORY _ ALARM ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Auto Cancel ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset O ngo ing ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpackage Manager . get Launch Intent For Package ( packageName )?. also Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġ?: ĠFirebase Crash ly t ics . getInstance () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. record Exception ( IllegalStateException (" Cannot Ġstart ĠRAD AR Ġapp Ġ$ packageName Ġwithout Ġlaunch Ġintent ")) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠBO OT _ START _ NOTIFICATION _ ID Ġ= Ġ 3 5 0 0 2 ĊĠĠĠ Ġ} Ċ } Ċ