SQLite DB wann Daten holen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • SQLite DB wann Daten holen

    Moin,

    hätte da mal eine Frage...

    Ich baue an einer Applikation in der man in einem Navigation Drawer eine Thematik wählen kann, deren Daten dann in einem ListView (auf einem Fragment) angezeigt werden.
    (Ich kann Daten anlegen, ändern & löschen in diesem ListView)

    Diese Daten befinden sich in einer SQLite DB und werden aktuell direkt rein gespeichert und je nach welches Thema ich im Navigation Drawer auswähle neu geholt...

    Meine Frage:

    Ist es unter Android sinnvoller die Daten in irgendein Objekt zu laden und darauf zuzugreifen und die Daten nur neu zu holen wenn eine Veränderung vorliegt, also beim anlegen, ändern löschen oder macht es die ganze App nicht unbedingt langsamer wenn ich es nach wie vor mache....auch wenn es mal mehrerer 100-200 Einträge pro Thema sind?

    Wenn sich jemand damit auskennen sollte oder mir einen Link schicken kann wo zu diesem Konzept etwas geschrieben ist, wäre ich sehr dankbar! :-X ;)

    PS: Trennen und Aufbauen der "Verbindung" mache ich aktuell über die Events onResume & onPause in der Haupt-Activity.

    LG,
    Adrian
  • Die Frage ist, greifst du ständig auf alle Daten zu oder nur auf die gerade ausgewählte thematik?
    Wenn in der App nur die ausgewählte thematik angezeigt werden muss, macht es sinn die anderen daten nicht als Objekt im arbeitsspeicher zu halten sondern nur ein objekt zu den daten die gerade angezeigt werden.

    Wenn du dann Daten der ausgewählten Thematik änderst/löschst, kannst du das ja über das Objekt realisieren, was dann die aktionen im Hintergrund in der Datenbank speichert.
  • Meiner Einschätzung nach solltest Du das über einen ContentProvider und entsprechendem Loader lösen.
    Damit hast Du persönlich freie Hand, ob Du direkt über die Datenbank oder über Platzhalterobjekte arbeiten möchtest - und zwar ohne dass Du Dich permanent darum kümmern musst, welchen Zugriff Du gerade hast.
    Alles abstrahiert und gekapselt im ContentProvider.

    vogella.com/tutorials/AndroidSQLite/article.html
    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.

    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«
  • Marco Feltmann schrieb:

    Meiner Einschätzung nach solltest Du das über einen ContentProvider und entsprechendem Loader lösen.
    Damit hast Du persönlich freie Hand, ob Du direkt über die Datenbank oder über Platzhalterobjekte arbeiten möchtest - und zwar ohne dass Du Dich permanent darum kümmern musst, welchen Zugriff Du gerade hast.
    Alles abstrahiert und gekapselt im ContentProvider.

    vogella.com/tutorials/AndroidSQLite/article.html
    Perfekt! Danke ;)