0

AutoUpdateサービスクラスoncreate()があります-externalsdcardにログファイルを作成しますonStartCOmmand()-UpdateTask = new UpdateTask(this、AutoUpdate.logwriter)実行メソッドのこのクラスにスレッドクラスを拡張するUpdateTaskクラスがありますIローカルHTTPコンテキストを作成してログファイルにすべてのデータを書き込み、最後にThread.sleep(3000)を配置します。現在、ログファイルに3秒ごとにデータを取得していますが、制限時間を15分に変更したいと思います。BootReceiverクラスでBroadcastReceiverを拡張します。起動時にAutoUpdate Serviceクラスにインテントを渡し、サービスを開始します。私の質問は、15分ごとにUpdateTaskが機能し、Thread.sleep(3000)を使用して3秒間機能しているスレッド以外の、15分ごとにログにデータを書き込むアラームマネージャーを配置する必要があるということでした。

スリープスレッドをアラームマネージャーに置き換える必要があります

参考:時間制限を設けてサーバーからのデータを更新したい

4

1 に答える 1

0

アラームマネージャを繰り返し実行するようにスケジュールすると、間隔ごとに保留中のインテント内のインテントが自動的に呼び出されます(この場合は15分)。

その場合、進行中のサービスは必要ありません。代わりに、IntentServiceのonHandleIntentメソッドにロギングログインを実装し、AlarmManagerによって開始されるPendingIntentを渡す必要があります。

于 2012-11-12T16:57:45.900 に答える