android - Update userpositon to server periodically using Endpoints -


i update users position google endpoint in google app engine periodically.
fact i'm using endpoints important, because that's why cant use intentservice , alarmmanger schedule task.

the problem following:
update position server need objects not accessible in service.
let me try sketch it:

public class myservice extends intentservice {     [...]     @override     public int onstartcommand(intent intent, int flags, int startid) {         endpointshandler.updateposition()         return super.onstartcommand(intent, flags, startid);     } } 

here need objects of endpointshandler. cannot create new object, because depends on other objects googleapiclient.

but cannot add objects server because when initialize alarmmanager there no way pass objects

alarmmanager alarmmanager = (alarmmanager) getsystemservice(alarm_service); intent updaterintent = new intent(this, myservice.class); pendingintent pendingintent = pendingintent.getservice(this, 0, updaterintent, 0); alarmmanager.setrepeating(alarmmanager.elapsed_realtime_wakeup, some_period, some_period, pendingintent); 

i pass objects in intent, besides fact classes (even googleapiclient) have implement parceable, don't thing way. i'm sure there clean way not able find.

i solved on own.
since didn't find solution on so, i'll post here:

i used way descriped here. created central controller-class keeps important objects of app. class subclass of android.app.application.
in manifest-file added

<application     [...]     android:name=".controllers.appcontroller"> 

to declare use custom application class.
in each activity , service can use getapplication() object of application-class.


Comments

Popular posts from this blog

twig - Using Twigbridge in a Laravel 5.1 Package -

jdbc - Not able to establish database connection in eclipse -

firemonkey - How do I make a beep sound in Android using Delphi and the API? -