/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 0 . Ċ Ġ* ĠAn imize ĠDe vs Ċ Ġ* ĠCopyright Ġ 2 0 1 9 Ġ- Ġ 2 0 2 0 Ċ Ġ* ĠD av in ĠA lf ar iz ky ĠPut ra ĠBas ude wa Ġ< db as ude wa @ gmail . com > Ċ Ġ* ĠThis Ġprogram Ġused Ġfor Ġwatching Ġan ime Ġwithout Ġads . Ċ Ġ* Ċ Ġ*/ Ċ package Ġml . dv nl abs . anim ize . player Ċ Ċ import Ġandroid . content . Component Name Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . Service Connection Ċ import Ġandroid . os . IB inder Ċ import Ġandroid . util . Log Ċ import Ġml . dv nl abs . anim ize . player . Player Service . Player Binder Ċ import Ġorg . green robot . event bus . EventBus Ċ Ċ class ĠPlayer Manager Ċ ( private Ġval Ġcontext : ĠContext ) Ġ{ ĊĠĠĠ Ġvar Ġis Service Bound Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠ Ġfun Ġbind () Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . e (" BINDING :", Ġ" OK ") ĊĠĠĠĠĠĠĠ Ġ// context . getApplicationContext (). start Service ( new ĠIntent ( context , Player Service . class )); ĊĠĠĠĠĠĠĠ Ġcontext . bind Service ( Intent ( context , ĠPlayer Service :: class . java ), Ġservice Connection , ĠContext . BIND _ AUTO _ CREATE ) ĊĠĠĠĠĠĠĠ Ġis Service Bound Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġif Ġ( service Ġ!= Ġnull ) ĠEvent Bus . getDefault (). post ( service !!. getStatus ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġun bind () Ġ{ ĊĠĠĠĠĠĠĠ ĠLog . e (" UN BINDING :", Ġ" OK ") ĊĠĠĠĠĠĠĠ Ġ// if Ġ( service Bound ){ ĊĠĠĠĠĠĠĠ Ġ// context . getApplicationContext (). stop Service ( new ĠIntent ( context , Player Service . class )); ĊĠĠĠĠĠĠĠ Ġcontext . unbind Service ( service Connection ) ĊĠĠĠĠĠĠĠ Ġis Service Bound Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġservice Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġ//} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġservice Connection : ĠService Connection Ġ= Ġobject Ġ: ĠService Connection Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Service Connected ( arg 0 : ĠComponent Name , Ġbinder : ĠI Binder ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġplayer Binder Ġ= Ġbinder Ġas ĠPlayer Binder ĊĠĠĠĠĠĠĠĠĠĠĠ Ġservice Ġ= Ġplayer Binder . service ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Service Bound Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" BIND ER ĠSTATUS :", Ġ" OK ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// service Ġ= Ġ(( Player Service . Player Binder ) Ġbinder ). getService (); ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Service Disconnected ( arg 0 : ĠComponent Name ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i ( context . packageName , Ġ" Service Connection :: on Service Disconnected () Ġcalled ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġservice Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Service Bound Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" BIND ER ĠSTATUS :", Ġ" DC ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġvar Ġservice : ĠPlayer Service ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠ Ġ} Ċ Ċ }