1. Mitglieder surfen ohne Werbung auf Android-Hilfe.de! ✔ Jetzt kostenlos Mitglied in unserer Community werden.
  1. thrawn80, 11.11.2010 #1
    thrawn80

    thrawn80 Threadstarter Neuer Benutzer

    Falls jemand helfen könnte, wär super.

    Erste Frage:

    Ich habe bei mir Datum und Uhrzeit reingebastelt, dabei die beiden Sachen aus .getXXX und Calendar nach meinen Bedürftnissen angepasst.
    Wie bekomme ich es am effizientesten hin, dass die Zeit sich alle Minute aktualisiert?

    Zweite Frage:

    Ich verwende 2 Datenbanken, die ich teilweise im Vorfeld erstellt habe und auf der SD-Karte abgelegt habe.
    Die Query-Abfragen sind scheinbar teilweise recht rechenintensiv, nach Drücken eines Buttons dauert es ca. 2 Sek. bis er die Operationen ausführt.
    Nun würde ich gerne die DBs zum Start des App in den Arbeitsspeicher oder wenigstens in den internen Speicher kopieren.
    Wie komme ich da ran oder womit bekomme ich das ohne rooten hin?

    Danke im Voraus.
     
  2. funcoder, 11.11.2010 #2
    funcoder

    funcoder Erfahrener Benutzer

    Zu deiner ersten Frage, habe ich kürzlich erst was gespostet:
    https://www.android-hilfe.de/722074-post5.html
    Sofern ich dich richtig verstanden habe, und du möchtest das jede Minute, dein Code, der die aktuelle Uhrzeit ausließt aufgerufen werden soll.

    Zu deiner zweiten Frage kann ich dir nicht wirklich weiterhelfen. Du solltest auf jeden Fall sichergehen, dass dein sql query performant wie möglich ist. Also deine Datenbanken möglich denormalisiert halten, Joins vermeiden und die Bedingung möglichst weit einschränken.
    Vielleicht würde es auch funktionieren, bereits beim App Start die SQL Querys abzusetzen, sodass dann bei Ausführung des Button Codes nur noch die Daten ausgewertet werden müssen. Sicherlich, du hast die Ladezeit dann am Start des Apps, aber das wird den Benutzer deutlich weniger frustrieren, als wenn das App mitten in der Ausführung "hängen" bleibt ;-)
     
  3. thrawn80, 11.11.2010 #3
    thrawn80

    thrawn80 Threadstarter Neuer Benutzer

    Die Uhrzeit wird mitten im Hauptmenü als Textview angezeigt.
    Ich möchte natürlich nicht, dass während der Wartezeit das ganze System steht und blockiert wird. Wird das nicht mit Sleep erreicht?


    Zum Zweiten:
    Ich hab mir mal die Zeiten ausrechnen lassen, die die SQL-Operationen so brauchen. Für das "where-like"Auslesen aus einer 100 Zeilen langen Tabelle braucht er 6-50ms, was nicht so dramatisch ist.
    Aber das Schreiben von 3 (DREI) Werten in eine temporäre Tabelle dauert 180-700ms, die Werte schwanken teilweise extrem stark.
    Da muß doch irgendwas faul sein.

    Liegt es am Code oder dem verwendeten SQL-Befehl?

     
  4. funcoder, 11.11.2010 #4
    funcoder

    funcoder Erfahrener Benutzer

    Ok, also ein insert mit 3 Werten sollte definitiv nicht mal annähernd 180 ms dauern.
    Dein Code sieht aber auch nicht verdächtig aus. Hier hat jemand das gleiche Problem: Link

    Und zum sleep: Richtig die Programmausführung wird angehalten, weshalb du diesen Code auch in einen extra Thread auslagern solltest. Andere Möglichkeit fällt mir spontan nicht ein. In Java gibt es ja so eine Art "Timer" wie in VB nicht, oder? ;)
     
  5. thrawn80, 11.11.2010 #5
    thrawn80

    thrawn80 Threadstarter Neuer Benutzer

    Neues von der Front:

    nachdem ich recherchiert habe, dass selbst das Schreiben von Bytes auf der SD-Karte 200ms dauern soll, habe ich mal testweise die DB im internen Speicher angelegt.
    Und siehe da, die Gesamtzeit reduziert sich von mittleren 3400ms auf 300ms.

    Pervers das Ganze... :angry:
     
  6. Fr4gg0r, 11.11.2010 #6
    Fr4gg0r

    Fr4gg0r App-Anbieter (Werbung)

    Du hast ja in deinem /data/data/dein.package/ Ordner Schreibrechte :winki:
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
Bluetooth LE mit MIT App Inventor 2 Android App Entwicklung 15.06.2018
1 Entwickler, 2 Developer-Accounts Android App Entwicklung 22.05.2018
App-Aktualisierungen richtig testen und an den User bringen. Android App Entwicklung 03.03.2018
Animation zwischen 2 Activities systemweit ändern Android App Entwicklung 19.02.2018
Fragen zu all den Layouts Android App Entwicklung 12.02.2018
Eigene Web DB für App Inventor Android App Entwicklung 10.02.2018
[OFFEN] Frage zu AdMob und Voraussetzungen Android App Entwicklung 29.12.2017
Du betrachtest das Thema "2 Fragen über Dateioperationen und Aktualisierungen" im Forum "Android App Entwicklung",
  1. Android-Hilfe.de verwendet Cookies um Inhalte zu personalisieren und dir den bestmöglichen Service zu gewährleisten. Wenn du auf der Seite weitersurfst stimmst du der Cookie-Nutzung zu.  Ich stimme zu.