アプリケーションを拡張するクラスがあります。このクラスでは、AlarmManager を呼び出してインテントを渡します。スケジュールどおり、BroadcastReceiver を拡張する EventReceiver クラスは、onReceive メソッドで呼び出しを処理します。onReceive メソッドから再度インテントを呼び出して、別のイベントをスケジュールするにはどうすればよいですか?
1149 次
2 に答える
0
final Intent intent = new Intent(context, YourService.class);
final PendingIntent pending = PendingIntent.getService(context, 0, intent, 0);
final AlarmManager alarm = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarm.cancel(pending);
long interval = 30000;//milliseconds
alarm.setRepeating(AlarmManager.ELAPSED_REALTIME, SystemClock.elapsedRealtime(),interval, pending);
より完全なサンプルは、Photostream サンプル アプリケーションhttp://code.google.com/p/apps-for-android/にあります。
于 2010-04-27T00:17:54.673 に答える
0
setRepeating()
の代わりに, を使用set()
して、自動的に繰り返すことができます。または、PendingIntent
同等のものIntent
(同じアクション、同じUri
、同じコンポーネントなど) で別のものを作成するだけです。PendingIntent
毎回元のオブジェクトは必要ありません。
于 2010-04-26T22:59:59.137 に答える