データベースを使用して、検索フォームの状態を保持しています。onPauseメソッドを使用してデータを永続化し、onResumeメソッドを使用してデータを復元しています。私の意見では、状態の復元と永続化はブロック操作である必要があるため、UIスレッドでデータベース操作を実行する予定です。これは一般的に推奨されないことですが、操作は迅速である必要があり、非同期で実行すると、UIの動作に一貫性がなくなる可能性があると思います。
何かアドバイス
遅い操作が実行されている間、アプリケーションがユーザー入力を受け入れないようにしたい場合でも、UIスレッドでそれらを受け入れたくはありません。これには2つの理由があります。
ブロック操作にしたい場合でも、何かが起こっていることをユーザーに示す必要があります。UIスレッドがブロックされると、画面はユーザーのタッチ操作に反応しなくなります。Sp、永続化と復元が完了するまで、メソッドとメソッドに無期限の進行状況バーを表示できます。そして明らかに、別のスレッドでそれを行う必要があります。UIスレッドがしばらく応答しない場合、Androidがエラーを出す可能性があるためです。onPause()
onResume()
Application Not Working