Android Ladezeiten verringern

Diskutiere Ladezeiten verringern im Mobile Geräte Forum; Hallo zusammen, meine App, eine Anwendung die auf eine Fimdatenbank zugreift("TMDB") zeigt auf fast jedem neuen Fragment bzw. Activity Daten aus...

  1. MARJAVA
    MARJAVA Mitglied
    Hallo zusammen,

    meine App, eine Anwendung die auf eine Fimdatenbank zugreift("TMDB") zeigt auf fast jedem neuen Fragment bzw. Activity Daten aus der Datenbank, Text, Bilder, Fotos.

    Das alles muss in dem Moment wenn auf die activity oder das Fragment zugegriffen wird geladen werden. Es werden JSON-Daten geladen und verarbeitet. Auch wenn die Seite bereits geladen wurde und nur das Tablayout hin und hergeschalten wurde, muss die Information neu geladen werden.
    Das sind ziemlich lange Ladezeiten, die ich mit meinen AsyncTasks brauche. Für vereinzelte Ladezeiten nutze ich eine Progressbar, doch das kann ich nicht überall einbauen. Bei vergleichbaren Apps dauert das nicht so lange, allerdings kenne ich den Code dieser nicht.

    Hat jemand eine Idee, wie ich die Ladezeiten reduzieren kann? Ist es sinnvoll, die geladenen Daten in eine SQLIte-Datenbank zu schreiben um sie bei bedarf, gleich aus der App-Datenbank zu lesen. Das sollte schneller gehen als übers Internet. Gibt es andere Methode um die Daten schneller griffbereit zu haben.

    Beispiel: Ich lade ein Gridview mit Filmen, hinter dem sich bei jedem Feld eine Filmid versteckt. Beim Klick auf das Feld läd er die Filmdaten zur entsprechenden ID. Ich könnte ja alle Daten bereits vorm Klick auf das Feld im Hintergrund geladen haben um die Verzögerung zur vermeiden. Allerdings sind das dann ob ich die Daten anschaue oder nicht massiv viel Datenvolumen, was hier verbraucht wird. Gibt es andere Methoden bereits geladene Daten im Arbeitsspeicher vorzuhalten.
    Hat dazu vielleicht jemand eine Idee oder Erfahrungen gesammelt?
     
  2. Vielleicht hilft dir dieses Training hier weiter.
  3. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Die Daten irgendwo cachen, je nach Bedarf entweder in einer Datenbank, die dann über mehrere Starts erhalten bleibt, oder nur "In Memory".
    Im Idealfall kombiniert mit Cache-Direktiven von Server-Seite.

    Wenn es sich nur im Daten handelt (und keine Bilder, Videos, ...) ist das Volumen meistens verschmerzbar - da muss man abwägen zwischen ein paar Daten zu viel laden und auf Daten warten.



    Wie genau das bei dir umsetzbar ist, hängt von deiner Anwendung ab. Nutzt du irgendein Architekturmuster, zB Flux?
     
  4. Thallius
    Thallius Bekanntes Mitglied
    Also ich verstehe gerade nicht warum das Laden der Filmdaten für eine id länger als ein paar Millisekunden dauern sollte? Wenn da viele Bilder bei sind, dann lade halt die Bilder asynchron und stelle die Seite zuerst mit Platzhaltern für die Bilder da und lade die Bilder dann nach und nach in die Seite.
     
  5. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Weil allein die RTT länger als "ein paar Millisekunden" dauert, dazu noch die Zeit, die der Server braucht, und man ist schnell bei >200-300ms.

    Dann noch ein paar sequentielle Requests und man ist im Sekundenbereich.
     
  6. Wenn du Java lernen möchtest, empfehlen wir dir dieses Online-Training hier
Passende Stellenanzeigen aus deiner Region:





Die Seite wird geladen...

Ladezeiten verringern - Ähnliche Themen

Problem mit unterschiedlichen Ladezeiten von Bildern / Blockieren der UI
Problem mit unterschiedlichen Ladezeiten von Bildern / Blockieren der UI im Forum AWT, Swing, JavaFX & SWT
Ausgabe: Anzahl Sterne, danach verringern
Ausgabe: Anzahl Sterne, danach verringern im Forum Java Basics - Anfänger-Themen
verringern und löschen
verringern und löschen im Forum Für Verirrte - Fragen zu JavaScript
Jump-n-Run Auslastung verringern
Jump-n-Run Auslastung verringern im Forum Spiele- und Multimedia-Programmierung
Farbtiefe eines BufferedImage verringern
Farbtiefe eines BufferedImage verringern im Forum AWT, Swing, JavaFX & SWT
Thema: Ladezeiten verringern