1

2 つの独立した繰り返しアラームを持つアプリをプログラムしたいと考えています。これを行うことができるように見える 2 つのクラスがあります:AlarmManagerAlarmClock. テストしましAlarmManagerたが、Android を再起動するとすべてのアラームがクリアされます。

どちらを使用する必要がありますか?

4

2 に答える 2

2

BroadcastReceiver を使用して、Android OS のブート ブロードキャストを処理し、アラームのスケジュールを変更します。

于 2012-08-23T05:40:55.020 に答える
1

AlarmManagerサービスを使用すると、将来のある時点でアプリケーションを実行するようにスケジュールできます。アラームが鳴ると、登録されていた Intent がシステムによってブロードキャストされ、ターゲット アプリケーションがまだ実行されていない場合は自動的に開始されます。

SO の投稿が役に立つかもしれませんAndroid AlarmManager

AlarmManager mgr=(AlarmManager)context.getSystemService(Context.ALARM_SERVICE); 
Intent i=new Intent(context, OnAlarmReceiver.class); 
PendingIntent pi=PendingIntent.getBroadcast(context, 0, i, 0);
mgr.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime(), PERIOD, pi);

一方、 AlarmClockプロバイダーには、目覚まし時計アプリケーションで新しいアラームを設定するアクティビティを開始するために使用できる Intent アクションとエクストラが含まれています。

于 2012-08-23T05:47:27.667 に答える