package Ġse . sig mac on nect ivity . ble scanner . receiver Ċ Ċ import Ġandroid . bluetooth . Bluetooth Adapter Ċ import Ġandroid . content . Broadcast Receiver Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġorg . k oin . core . K oin Component Ċ import Ġorg . k oin . core . inject Ċ import Ġse . sig mac on nect ivity . ble scanner . R Ċ import Ġse . sig mac on nect ivity . ble scanner . domain . ble . Bluetooth Status Repository Ċ import Ġse . sig mac on nect ivity . ble scanner . domain . model . Bluetooth Status Ċ import Ġse . sig mac on nect ivity . ble scanner . service . B le Scan Service Ċ import Ġtim ber . log . Tim ber Ċ Ċ class ĠBluetooth Adapter Status Receiver Ġ: ĠBroadcast Receiver (), ĠK oin Component Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġrepository : ĠBluetooth Status Repository Ġby Ġinject () ĊĊĠĠĠ Ġoverride Ġfun Ġon Receive ( context : ĠContext ?, Ġintent : ĠIntent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( intent Ġ!= Ġnull Ġ&& ĠBluetooth Adapter . ACTION _ STATE _ CHANGED Ġ== Ġintent . action ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġstate Ġ= Ġintent . getInt Extra ( Bluetooth Adapter . EXTRA _ STATE , ĠBluetooth Adapter . ERROR ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . d (" Received ĠBluetooth Adapter Ġstate Ġchanged , Ġstate Ġ= Ġ[$ state ]") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( state ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBluetooth Adapter . STATE _ OFF Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepository . put Bluetooth Status ( Bluetooth Status . Turn ed Off ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . stop Service ( Intent ( it , ĠB le Scan Service :: class . java )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . makeText ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" Please Ġenable ĠBluetooth Ġto Ġuse Ġ${ context . getString ( R . string . app _ name )} ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠToast . LENGTH _ LONG ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). show () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBluetooth Adapter . STATE _ ON Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepository . put Bluetooth Status ( Bluetooth Status . Turn ed On ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTim ber . d (" Bluetooth Ġenabled , Ġstarting ĠB le Scan Service ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . start Foreground Service ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIntent ( it , ĠB le Scan Service :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }