Ich schreibe eine Android-Anwendung, die Daten aus einem SQLite Database
liest und zeigt dann die Daten auf einem nächsten Bildschirm. Wann immer ich eine Abfrage für die Datenbank machte, würde ich eine Fehlermeldung erhalten, dass zu viel Arbeit am Hauptthread getan wird.Android zusätzliche Threads und Looper
Ich legte meine Abfrage dann in einem neuen Thema:
(new Thread()
{
public void run()
{
Looper.prepare();
try
{
FPJobCardWizard data = dbHelperInstance.loadFPJobCardWizardFull(fitmentHash);
wState.fitmentItemSet(data.fitmentItemGet());
} catch (Exception e) {e.printStackTrace();}
Looper.loop();
}
}).start();
nun die gui/Haupt-Thread ist abgeschlossen, es ist Operation vor der Abfrage Vollständigkeit und als Folge des data
Variable ist immer noch leer. Ich lese ein paar Posts und die API-Dokumentation und es scheint, dass ich eine Looper
verwenden muss (das scheint die richtige Lösung zu sein), aber ich habe noch nie einen Looper benutzt und kann es anscheinend nicht zum Laufen bringen.
Bitte überprüfen Sie den obigen Code und führen Sie mich in die richtige Richtung.
Vielen Dank im Voraus.
einen Handler die Daten an den UI-Thread zu senden. –