Was sind die besten Vorgehensweisen für SQLite unter Android?

Was als die besten Praktiken bei der Ausführung von Abfragen auf eine SQLite-Datenbank in einer Android-app?

Ist es sicher zu laufen Einfügungen, Löschungen und wählen Sie Abfragen aus einer AsyncTask ist doInBackground? Oder sollte ich mit dem UI-Thread? Ich nehme an, dass Datenbank-Abfragen können "schwere" und sollte nicht mit dem UI-thread kann lock up der app - was eine Anwendung Reagiert Nicht (ANR).

Wenn ich mehrere AsyncTasks, sollten Sie eine Verbindung gemeinsam nutzen, oder sollten Sie eine Verbindung öffnen, jeder?

Gibt es bewährte Verfahren für diese Szenarios?

Kommentar zu dem Problem
Was auch immer Sie tun, denken Sie daran, desinfizieren Sie Ihre Eingaben, wenn Sie Ihre content-provider (oder SQLite-Schnittstelle) öffentlich vor! Kommentarautor: Kristopher Micinski
Sie definitiv NICHT tun sollte db-Zugriffe aus dem UI-thread, ich kann Ihnen sagen, dass viel. Kommentarautor: Edward Falk
@EdwardFalk Warum nicht? Sicherlich gibt es Anwendungsfälle, bei denen es gilt, dies zu tun? Kommentarautor: Michael
Wenn Sie eine I/O -, Netzwerk-Zugriffe, etc. aus der UI-thread, das ganze Gerät friert ein, bis der Vorgang abgeschlossen ist. Wenn es abgeschlossen ist in 1/20 Sekunde, dann fein. Wenn es länger dauert, du hast eine schlechte user experience. Kommentarautor: Edward Falk

InformationsquelleAutor der Frage Vidar Vestnes | 2010-03-22

Schreibe einen Kommentar