package Ġcom . music player . a ow . utils . receiver Ċ Ċ import Ġandroid . tele phony . Phone State Listener Ċ import Ġandroid . tele phony . Tele phony Manager Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . Broadcast Receiver Ċ import Ġandroid . content . Context Ċ import Ġcom . music player . a ow . player . Player ĊĊ Ċ /** Ċ Ġ* ĠCreated Ġby ĠArc a Ġon Ġ 1 1 / 2 9 / 2 0 1 7 . Ċ Ġ*/ Ċ class ĠCall Receiver Ġ: ĠBroadcast Receiver () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Receive ( context : ĠContext , Ġarg 1 : ĠIntent ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠTODO ĠAuto - generated Ġmethod Ġstub ĊĠĠĠĠĠĠĠ Ġval Ġphone Listener Ġ= ĠMy Phone State Listener () ĊĠĠĠĠĠĠĠ Ġval Ġtele phony Ġ= Ġcontext . getSystem Service ( Context . TELE PHONY _ SERVICE ) Ġas ĠTele phony Manager ĊĠĠĠĠĠĠĠ Ġtele phony . listen ( phone Listener , ĠPhone State Listener . LIST EN _ CALL _ STATE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠMy Phone State Listener Ġ: ĠPhone State Listener () Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Call StateChanged ( state : ĠInt , Ġincoming Number : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( state ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTele phony Manager . CALL _ STATE _ IDLE Ġ-> Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! m Player !!. is Playing Ġ&& Ġwas Playing ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Player !!. play () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwas Playing Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTele phony Manager . CALL _ STATE _ OFF HOOK Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTele phony Manager . CALL _ STATE _ RING ING Ġ-> Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( m Player !!. is Playing ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Player !!. pause () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwas Playing Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġm Player Ġ= ĠPlayer . instance ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġwas Playing Ġ= ĠPlayer . instance !!. is Playing ĊĠĠĠ Ġ} Ċ }