2011-11-11 8 views
0

私は定期的な同期をサーバで実行するアプリケーションを実装しようとしています。私は正常にReceiver & AlarmManagerを介してトリガされたサービスを使用してこれを実装することができましたが、アプリケーションがTaskMgrによって閉じられるとアラームが消えてしまうという欠点があります。Androidサービスを実行して終了する場合に再起動するようにスケジュールします。

私はこれがAndroid OSの予想される動作であることを理解していますが、Facebookのような一部のアプリケーションでは、FacebookのアプリケーションがTaskMgrで閉じられても短時間のタイムアウト後にバックアップを開始するサービスがあります。私はこれを監視し、サービスが消えてから約1分ほど後に再起動するのを見ます。同様の方法(Twitter、辞書、ReadItLaterなど)で動作する多数のAppsがあります。

この現象を再現したいのですが、このようにして、ユーザーが誤ってTaskMgrで自分のアプリケーションを閉じても、バックグラウンドで定期的な同期を実行することができます。

ありがとうございます。

答えて

0

タスクキラーを使用してクローズした後でもサービスを再起動する必要がある場合は、サービスに関連するインバウンドプロセスが必要です.Youは、サービスが存在する限り通知領域に進行中の通知を表示し、startForeground ()

http://www.androiddiscuss.com/1-android-discuss/91804.html がこれで解決しないリンク

+0

を確認してください。タスクキラーは、通知と組み合わせても、実行中のサービスを殺すことができる – josephus

+0

まあ、私はFacebookのようなAppsが自分のサービスを再開する方法を見つけようとしています。あなたがそれを殺した後でさえ、それは1分ほど後に戻ってくる。すべてのアラームがタスクマネージャによっても殺されるため、アラームマネージャは機能していないようです。別の方法が必要です。 – AVP06

関連する問題