2010-06-14 5 views
5

Ich möchte wissen, wann eine close-Methode einer SQLite-Datenbank in einem Lebenszyklus aufgerufen werden sollte, da das NotePad-Beispiel in der SDK (http://developer.android.com/resources/tutorials/notepad/index.html) nicht aufruft NotesDbAdapter.close(), implementiert es diese Methode jedoch.Wann sollte ich eine enge Methode einer SQLite-Datenbank in Android aufrufen

Meine Anwendung greift auf die Datenbank nicht so häufig, aber einige, es hängt von Benutzeranforderungen ab. Ich denke, ich sollte die db bei onCreate öffnen und bei onDestroy schließen. Ist das eine gute Übung?

Vielen Dank im Voraus, yokyo

Antwort

4

Ich glaube, ich sollte den db am onCreate öffnen und es am onDestroy schließen. Ist das eine gute Übung?

Ja, das ist ein gutes Muster zu verwenden.

+0

Danke CommonsWare. Du hast mir versichert;) –

+3

Nein, ist es nicht. Wie auf den Entwicklerseiten angegeben, wird die onDestroy-Methode nicht aufgerufen, wenn das System den Prozess aufgrund von wenig Arbeitsspeicher beendet. Sie sollten dafür die onPause-Methode verwenden. http://developer.android.com/reference/android/app/Activity.html#onDestroy%28%29 –

+0

@Will Kru: Nein, 'onDestroy()' ist in Ordnung. Wenn der Prozess beendet wird, gibt es anscheinend keinen Schaden - alles wird als Teil der Datenbanktransaktionen beibehalten. – CommonsWare

Verwandte Themen