package Ġorg . m ack rist of . follow me . service Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . util . Log Ċ import Ġcom . google . android . gms . common . api . Google ApiClient Ċ import Ġcom . google . android . gms . we arable . Message Event Ċ import Ġcom . google . android . gms . we arable . W ear able Ċ import Ġcom . google . android . gms . we arable . W ear able Listener Service Ċ import Ġorg . m ack rist of . follow me . Main W ear Activity Ċ import Ġorg . m ack rist of . follow me . Constants Ċ import Ġorg . m ack rist of . follow me . G ps Service Ċ import Ġorg . m ack rist of . follow me . Utils Ċ import Ġjava . util . concurrent . TimeUnit Ċ Ċ class ĠW ear Message Listener : ĠW ear able Listener Service () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate (){ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate () ĊĠĠĠĠĠĠĠ ĠLog . i ( Main W ear Activity . TAG ," W ear able Listener Service Ġstarted ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Message Received ( message Event : ĠMessage Event ){ ĊĠĠĠĠĠĠĠ Ġif Ġ( message Event . path Ġ== ĠConstants . COMMAND _ PING ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i ( Main W ear Activity . TAG , Ġmessage Event . path Ġ+ Ġ" Ġ(" Ġ+ ĠString ( message Event . data ) Ġ+ Ġ") ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġi Ġ= ĠIntent ( application Context Ġas ĠContext , ĠMain W ear Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġi . add Flags ( Intent . FLAG _ ACTIVITY _ NEW _ TASK ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartActivity ( i ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreply ( Constants . COMMAND _ PING , Ġ" p ong ", message Event . source NodeId ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( message Event . path Ġ== ĠConstants . COMMAND _ IS _ GPS ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreply ( Constants . COMMAND _ IS _ GPS , Ġ( Utils . has GPS ( application Context ) Ġ&& ĠUtils . is G ps Enabled ( application Context )). toString (), Ġmessage Event . source NodeId ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġif Ġ( message Event . path Ġ== ĠConstants . COMMAND _ ACTIV ATE _ GPS ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Utils . has GPS ( application Context ) Ġ&& ĠUtils . is G ps Enabled ( application Context )){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// TODO Ġstart ĠService ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Loc Ġ= ĠIntent ( this , ĠG ps Service :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! stop Service ( intent Loc )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Service ( intent Loc ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Message Received ( Ġmessage Event Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġreply ( path : ĠString , Ġmessage : ĠString ?, Ġsender Id : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġclient Ġ= ĠGoogle ApiClient . Builder ( application Context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. add Api ( W ear able . API ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠĠĠĠĠ Ġclient . blocking Connect ( Constants . CONNECTION _ TIME _ OUT _ MS , ĠTimeUnit . MILLISECONDS ); ĊĠĠĠĠĠĠĠ ĠW ear able . Message Api . sendMessage ( client , Ġsender Id , Ġpath , Ġmessage ?. toByteArray ()); ĊĠĠĠĠĠĠĠ Ġclient . disconnect (); ĊĠĠĠ Ġ} Ċ Ċ }