例如,如果我需要運行我的服務下面的代碼,每3第二次使用:
Calendar cal = Calendar.getInstance();
Intent intent = new Intent(this, LockService.class);
PendingIntent pintent = PendingIntent.getService(this, 0, intent, 0);
AlarmManager alarm = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
alarm.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 3*1000, pintent);
到底需要廣播接收器,用於當手機重啓,像如下代碼:
public class MyScheduleReceiver extends BroadcastReceiver {
private static final long REPEAT_TIME = 1000 * 60;
@Override
public void onReceive(Context context, Intent intent) {
AlarmManager service = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, MyStartServiceReceiver.class);
PendingIntent pending = PendingIntent.getBroadcast(context, 0, i,
PendingIntent.FLAG_CANCEL_CURRENT);
Calendar cal = Calendar.getInstance();
cal.add(Calendar.SECOND, 60);
service.setInexactRepeating(AlarmManager.RTC_WAKEUP,
cal.getTimeInMillis(), REPEAT_TIME, pending);
}
}
和幫助類:
public class MyStartServiceReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Intent service = new Intent(context, LocalWordService.class);
context.startService(service);
}
}
,並需要獲得許可
,並確定在清單
嗨服務和廣播接收器。感謝你的回答。我是這個應用程序的UI設計師。我想你誤解了這個問題,或者OP沒有明確解釋。即使應用程序未按小時打開,他也希望將json數據存儲到本地存儲中。他還沒有得到如何通過android服務存儲數據。 – Ravimallya 2014-10-11 12:56:36