私のアプリケーションでは、インターネットから情報をダウンロードして通知を表示するサービスをトリガーするアラームがあります。
これが私のコードの簡略版です:
MyActivity には次のものが含まれます。
Calendar cal = Calendar.getInstance();
cal.add(Calendar.SECOND, 20);
Intent intent = new Intent(this, AlarmService.class);
PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 20000, pendingIntent);
また、AlarmService は次のようになります。
public class AlarmService extends Service {
@Override
public void onCreate() {
new myAsyncTask().execute();
}
private class myAsyncTask extends AsyncTask<Void, Void, Void> {
@Override
protected Void doInBackground(Void... args) {
//Download stuff
return null;
}
@Override
protected void onPostExecute(Void arg) {
//Show notification
}
}
}
いつウェイクロックを使用するのかよくわからないので、私の質問: この場合、ウェイクロックを使用する必要がありますか? 使用する場合は、どこで開始および停止する必要がありますか?
前もって感謝します