package Ġcom . dsc vit . smart glass comp anion Ċ Ċ import Ġandroid . app . Service Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . IB inder Ċ import Ġandroid . service . notification . Notification Listener Service Ċ import Ġandroid . service . notification . StatusBar Notification Ċ import Ġandroid . util . Log Ċ import Ġcom . google . firebase . database . Firebase Database Ċ Ċ class ĠNotification Listener Firebase Ġ: ĠNotification Listener Service () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonStart Command ( intent : ĠIntent ?, Ġflags : ĠInt , Ġstart Id : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġon Task Removed ( intent ) ĊĠĠĠĠĠĠĠ Ġreturn ĠService . START _ STICK Y ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ( intent : ĠIntent ?): ĠI Binder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . on Bind ( intent ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Notification Posted ( sb n : ĠStatus Bar Notification ?) Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent (" com . dsc vit . smart glass comp anion ") Ċ // ĠĠĠĠĠĠĠ Ġintent . putExtra (" SAMPLE _ NOT IF ", Ġsb n ?. notification ?. toString ()) Ċ // ĠĠĠĠĠĠĠ Ġsend Broadcast ( intent ) ĊĊĠĠĠĠĠĠĠ Ġvar Ġpack Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġvar Ġtext Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġvar Ġtitle Ġ= Ġ"" ĊĠĠĠĠĠĠĠ Ġvar Ġid Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġsb n ?. let Ġ{ sb n Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpack Ġ= Ġsb n . packageName ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġsb n . id ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( android . os . Build . VERSION . SDK _ INT Ġ>= Ġandroid . os . Build . VERSION _ CODES . KIT K AT ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġextras Ġ= Ġsb n . notification . extras ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġextras . get CharSequence (" android . text "). toString () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġextras . getString (" android . title ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" NOT IF _ PACK ", Ġpack ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" NOT IF _ TITLE ", Ġtitle ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" NOT IF _ TEXT ", Ġtext ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġdb Instance Ġ= ĠFirebase Database . getInstance (). getReference (" not ifs "). child ( pack . replace (".", Ġ"")) ĊĠĠĠĠĠĠĠ Ġwith ( db Instance ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchild (" package "). setValue ( pack ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchild (" title "). setValue ( title ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġchild (" text "). setValue ( text ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Notification Removed ( sb n : ĠStatus Bar Notification ?) Ġ{ ĊĊĠĠĠ Ġ} Ċ Ċ // ĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġsuper . on Destroy () Ċ // ĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent (" com . dsc vit . smart glass comp anion ") Ċ // ĠĠĠĠĠĠĠ Ġsend Broadcast ( intent ) Ċ // ĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Task Removed ( root Intent : ĠIntent ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrestart Service Intent Ġ= ĠIntent ( application Context , Ġjava Class ) ĊĠĠĠĠĠĠĠ Ġrestart Service Intent . set Package ( packageName ) ĊĠĠĠĠĠĠĠ Ġstart Service ( restart Service Intent ) ĊĠĠĠĠĠĠĠ Ġsuper . on Task Removed ( root Intent ) ĊĠĠĠ Ġ} Ċ Ċ }