i following (https://developers.google.com/google-apps/calendar/quickstart/android) use google calendar apis in android app.
it works, need able same in background service.
com.google.api.services.calendar.calendar mservice = new com.google.api.services.calendar.calendar.builder( transport, jsonfactory, credential) .setapplicationname("google calendar api android quickstart") .build();
helps me instantiate calendar object.
i instantiate crendential so:
credential = googleaccountcredential.usingoauth2( getapplicationcontext(), arrays.aslist(scopes)) .setbackoff(new exponentialbackoff()) .setselectedaccountname(settings.getstring(pref_account_name, null));
how use them both in background service?
i using intentservice (wakefulintentservice) background service.
the intent service triggered alarm this:
public class receiver extends broadcastreceiver { private static final int period = 5000; private static final int initial_delay = 5000; @override public void onreceive(context ctxt, intent i) { if (i.getaction() == null) { wakefulintentservice.sendwakefulwork(ctxt, scheduledservice.class); } else { schedulealarms(ctxt); } } static void schedulealarms(context ctxt) { alarmmanager mgr = (alarmmanager) ctxt.getsystemservice(context.alarm_service); intent = new intent(ctxt, receiver.class); pendingintent pi = pendingintent.getbroadcast(ctxt, 0, i, 0); mgr.setrepeating(alarmmanager.elapsed_realtime_wakeup, systemclock.elapsedrealtime() + initial_delay, period, pi); } }
my main activity calls receiver.schedulealarms
.
Comments
Post a Comment