0

このチュートリアルに従って、独自の DB コントラクトと DB ヘルパー クラスを作成しました。Activity に DBHelper 変数があり、それを設定しましたonCreate()

mDbHelper = new CustomDbHelper(getApplicationContext());

私の質問は: で dbHelper を閉じるonStop()必要がありますか、それとも不要ですか?

 @Override
    protected void onStop() {
        super.onStop();  // Always call the superclass method first

        mDbHelper.close();
    }
4

2 に答える 2

1

onCreateメソッドで宣言しないでください。

この点で最も便利な方法は、アクセスする必要があるときに初期化することです。その後使用し、使用後はすぐに閉じてください。onStopまたはonDestroy呼び出されることが保証されていません。したがって、これらのメソッドでこの種のリソースを処理するのは良くありません。

したがって、アプリケーションで 3 回使用する必要がある場合は、3 回初期化し、3 回閉じる必要があります。メモリ管理の観点からもアプリケーション開発に適しています。

于 2015-11-22T05:28:33.483 に答える