1

ここでは、アラーム サービスを使用して 30 分ごとにアラームを再生します。現在、すべての開始から10秒ごとに再生するように設定しています。

コードは次のとおりです。

@Override
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    setContentView(R.layout.settings_layout);


    Intent myIntent = new Intent(SettingsActivity.this, MyAlarmService.class);
    pendingIntent = PendingIntent.getService(SettingsActivity.this, 0, myIntent, 0);

    AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);

    Calendar calendar = Calendar.getInstance();
    calendar.setTimeInMillis(System.currentTimeMillis());

    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 10*1000, pendingIntent);

}

今問題は、アプリケーションの開始時からではなく、12:30 からアラームを開始したいということで、30 分ごとに繰り返し再生する必要があります。1:00、1:30、2:00 のように。. . 等

では、コードで何を変更する必要がありますか?

4

5 に答える 5

3

特定の時間にサービスを開始すること。この投稿を参照してください。

Alarmmanager を使用して特定の時間にサービスを開始する

于 2012-04-06T22:12:13.193 に答える
1

Setメソッドを使用して、最初のアラーム時刻を 12:30 に設定します。

アラームが鳴ったら、次のアラーム時刻を設定し、アラームが不要になるまでそれを続けます。

このような単純なタスクを実行するためにサービスは必要ありません。AlarmManager は、これを処理する以上の能力を備えています。

于 2012-04-06T05:55:49.257 に答える