package Ġss . prox imity service Ċ Ċ import Ġandroid . content . Broadcast Receiver Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . Intent Filter Ċ import Ġandroid . os . Build Ċ import Ġandroid . service . quick settings . Tile Ċ import Ġandroid . service . quick settings . Tile Service Ċ import Ġandroidx . annotation . Requires Api Ċ import Ġandroidx . local broadcast manager . content . Local Broadcast Manager Ċ import Ġss . prox imity service . Prox imity Service . Companion . INT ENT _ NOTIFY _ ACTIVE Ċ import Ġss . prox imity service . Prox imity Service . Companion . INT ENT _ NOTIFY _ IN ACTIVE Ċ Ċ @ Requires Api ( Build . VERSION _ CODES . N ) Ċ class ĠToggle Tile Service Ġ: ĠTile Service () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġstate Receiver Ġ= Ġobject Ġ: ĠBroadcast Receiver () Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Receive ( context : ĠContext , Ġintent : ĠIntent ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Tile () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonClick () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġactivity Class Ġ= Ġif Ġ( Prox imity Service . isRunning ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStop Activity :: class . java ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStart Activity :: class . java ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠstartActivity ( Intent ( this , Ġactivity Class ). set Flags ( Intent . FLAG _ ACTIVITY _ NEW _ TASK )) ĊĠĠĠĠĠĠĠ Ġupdate Tile () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Tile Added () Ġ{ ĊĠĠĠĠĠĠĠ Ġupdate Tile () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonStart Listening () Ġ{ ĊĠĠĠĠĠĠĠ Ġupdate Tile () ĊĠĠĠĠĠĠĠ Ġval Ġfilter Ġ= ĠIntent Filter (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Action ( INT ENT _ NOTIFY _ ACTIVE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Action ( INT ENT _ NOTIFY _ IN ACTIVE ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠLocal Broadcast Manager . getInstance ( this ). register Receiver ( state Receiver , Ġfilter ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Stop Listening () Ġ{ ĊĠĠĠĠĠĠĠ ĠLocal Broadcast Manager . getInstance ( this ). unregister Receiver ( state Receiver ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġupdate Tile () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtile Ġ= Ġqs Tile ĊĠĠĠĠĠĠĠ Ġtile . state Ġ= Ġif Ġ( Prox imity Service . isRunning ) ĠTile . STATE _ ACTIVE Ġelse ĠTile . STATE _ IN ACTIVE ĊĠĠĠĠĠĠĠ Ġtile . update Tile () ĊĠĠĠ Ġ} Ċ } Ċ