1

アプリケーションが実行されていなくても、wifi がオンになるとすぐにデータをアップロードしたいアプリケーションがあります。これは、Android バックグラウンド サービスを使用して実行できると思います。アプリが実行されていないときにバックグラウンド サービスを使用してデータをアップロードするのを手伝ってください。または、これを達成するための他の方法を提案してください。

前もって感謝します!!

4

2 に答える 2

1

より精巧にするには、次のように実装します

  • 開始済みサービス (bindService() の代わりに startService() を使用して開始されるサービス) を作成します。
  • このサービスの onStartCommand() コールバックを実装します。このコールバック メソッドで、アップロードするデータがあるかどうかを確認します (このデータがアクティビティによって作成された場合は、DB テーブルを使用してアップロードするデータをキューに入れ、サービスがその DB からデータを取得することをお勧めします)。WIFI 接続を確認し、利用可能な場合はデータをアップロードします。
  • ここで、WIFI が利用可能なときはいつでもこのサービスをトリガーする必要があります。ここにあなたの2つの方法があります
  • 方法 1: アプリケーション マニフェスト ファイルに登録して、WIFI 接続の変更が通知されるようにします。このリンクを参照してください。登録されたブロードキャスト レシーバーは、WIFI の状態が変化したときに呼び出されます。WIFIが利用可能な場合、放送受信機からサービスを開始します
  • 方法 2 : AlarmManager を使用して、サービスを定期的に起動します (たとえば、10 分ごと)。このリンクを参照してください。この方法は、アップロードするデータが時々生成される場合に役立ちます。

これが役に立てば幸いです。ご不明な点がございましたら、お知らせください。

于 2013-11-20T12:51:31.127 に答える
0

アクティビティに対して完全に独立した無制限のサービスを使用する必要があります (詳細については、こちらを確認してください)。サービスを開始したら、ConnectivityManager を使用してインターネット接続を監視します。このような例を使用してください。楽しんで。

于 2013-11-14T07:51:05.120 に答える