2011-08-10 14 views
0

私は現在、中断されない重い処理を行うアプリケーションに取り組んでいます。ユーザーが別のアクティビティを開始できないようにする方法があるかどうかは疑問でした。Androidのアクティビティがフォーカスを失うのを防ぐ

活動について少し:

- それは画面が - それは、その進捗ダイアログを持ってスリープ状態にしないように処理 - それはwakelockを持っていないUIスレッドからスレッドを分離しましたユーザーに処理を中断しないように警告します。

もう1つの注意点は、アプリケーションがフォーカスを失ってログアウトするときにアプリケーションが検出することです。これはセキュリティ対策です。私は天気を決定しようとしていました。アプリはスレッドを「優雅に」止めようと努力しなければなりませんでした。

ありがとうございます!

+0

あなたは完全にユーザーを制限することはできません。あなたのユーザーを実行しているバックグラウンドスレッドがある間も、電話を受けることがあります。だから依存しています...あなたのバックグラウンドスレッドが正確に何をしているか教えてください。それはあなたのデータベースを直接更新しますか? – doNotCheckMyBlog

答えて

0

他のアクティビティが開始されないことを保証する可能性はありません。 本当に長いバックグラウンド処理では、ユーザーサービスを行う必要があります。場合によっては、このサービスを「フォアグラウンド」として設定することもできます。例はアンドロイドリファレンスを見てください。

関連する問題