1

私のアプリはいくつかのファイルを動的に作成し、オブジェクトを介してファイルを追跡します。ある時点で、オブジェクトは IntentService に渡されます。IntentService の目的は、

  • 他のファイルに関するデータを含む XML ファイルを作成する
  • XML ファイルとその他のファイルを ZIP ファイルに追加する
  • ZIP ファイルを WCF サービスにアップロードする

ZIP ファイルは、ある時点でアップロードする必要があります。物事が起こる可能性があります。WCF サービスがダウンしている可能性があります。

ZIP ファイルがアップロードされることを保証するには、どのようなオプションがありますか? 私の現在の計画は、いくつかの情報を SQLite DB に保存し、アプリを起動するたびに確認してそこから取得することです。それが良いアイデアなのか、これを処理するためのより良い方法があるのか​​ どうかはわかりません。

また、私はAndroid初心者ですが、正しく理解していれば、IntentServiceが途中でシャットダウンされた場合、ある時点で同じIntentなどで自動的に再作成されますよね? そうでなければ、それも考慮に入れる必要があります。

4

2 に答える 2

0

私の現在の計画は、いくつかの情報を SQLite DB に保存し、アプリを起動するたびに確認してそこから取得することです。

あなたはほとんどそこにいます。アプリが起動するたびに DB をチェックする代わりに、AlarmManagerX 時間 / 日ごとに を使用してアップロードのステータスをチェックします。アップロードは によって開始できますIntentService

が優れている理由AlarmManagerは、ユーザーがアプリを数日または数週間開いたままにしておくことを選択できるからです。データベースとアップロード コードを実行する繰り返しアラームにより、アップロードの試行が定期的に行われることを確認できます。

定期的なタスクのスケジュールに関するこの関連する質問を見てください - Android での定期的なタスクのスケジュール

于 2013-04-08T14:09:46.333 に答える