0

私のAndroidアプリケーションでは、システムが強制終了したり、アクティビティやプロセスを強制停止したりするときに、いくつかの情報を保持したいと考えています。Bundle と sqlite データベースのどちらが優れているか。

4

2 に答える 2

2

システムが強制終了したり、アクティビティやプロセスを強制停止したりするときに、いくつかの情報を保持したいと考えています。

できません。システムが強制的にアプリを停止すると、アプリは強制終了されます。コールバックは呼び出されません。

アクティビティの onPause() メソッドが呼び出されるたびに、データを永続化する必要があります。

単純な int、String などの値については、 SharedPreferencesを使用できます。より整理された、またはより大きなデータセットの場合は、SQLite データベースを使用する必要があります。

于 2013-03-28T13:52:18.740 に答える
0

維持したいデータによって異なります。いくつかの構成情報または単一の変数については、Bundle を使用してください。SQlite はより複雑ですが、Bundle を使用するとサイエンスフィクションである検索とデータ編集が可能です。一般的に言えば、必要な場合を除き、バンドルを使用します。Bundle の使用が自動化されていないことは明らかであり、onDestroy() または onPause() でアプリケーションが強制終了される前にデータを書き込む必要があります。同じアクティビティの 1 つの実行から別の実行まで動的データを保持することは、そのためのものです。最も簡単なシナリオでは、少数の文字列または整数について、データを永続的に保持したい場合は、3 番目のオプションである SharedPreferences を選択する必要があります。

于 2013-03-28T13:53:16.557 に答える