Beiträge von M3doXX

    Java
    Date calStart = new Date(d.getStartMillis());
    System.out.println("Start " + calStart);
    Date calEnd = new Date(d.getEndMillis());
    System.out.println("End " + calEnd);
    			
    long difference = calEnd.getTime() - calStart.getTime();
    
    
    Date fullTime = new Date(difference);
    System.out.println("Arbeitszeit: " + fullTime);


    So sieht der Code im Moment aus. (Er sah schonmal komplett anders aus).
    Das Problem ist ja, dass bei der Differenz eine Stunde zuviel rauskommt und ich glaube! ich habe den Fehler gefunden.
    Das Start und Enddatum wird in MESZ angegeben und das fullTime-Datum in MEZ.
    Kann ich die Sommerzeit da irgendwie mit einstellen?

    Hi.


    Habs jetzt auch mit Calendar versucht, leider ohne Erfolg.
    Ich kriege bei der Differenz von End- und Startdatum immer eine Stunde zuviel. Woran könnte das liegen?
    Habe auch schon mit der TimeZone versucht, aber auch dann blieb der Erfolg leider aus ;(
    Zur Info: Die Start- und Enddaten hole ich aus meinem Google Kalender als Millisekunden.

    Hallo zusammen,


    ich brauche mal Eure Hilfe!
    Ich probiere seit Tagen eine vernünfitge Berechnung für meine (eigentlich total einfache) Idee.
    Ich möchte meine reine Arbeitszeit ausrechen in einer Android App.
    Undzwar habe ich dafür ein Datum inkl Uhrzeit in Millisekunden als Startdatum und das gleiche nochmal als Enddatum.
    Also muss ich z.B. arbeiten von Samstag 09:00Uhr (Startdatum in Millis) bis Samstag 16:00Uhr (Enddatum).


    Nun will ich erstmal die komplette Zeit ausrechen (EndDatum - StartDatum), dann meine Pausenzeiten abziehen und somit die reine Arbeitszeit erhalten.
    Die Pausenzeiten definiere ich in einer if-Verschachtelung.


    Ich habs mit java.util.Date und JodaTime probiert. Allerdings ohne Erfolg.
    Entweder fehlt immer irgendwo eine Stunde oder ich habe Probleme mit dem Format HH:mm .
    Hat jemand eine Lösung für dieses (einfache) Problem??
    Ich wäre sehr sehr dankbar!!
    Gruß


    M3doXX

    Hallo zusammen,


    ich habe folgendes Problem.
    Ich habe eine App geschrieben, die eine SQLite DB enthält.
    Außerdem habe ich eine MySQL DB aufgesetzt im Internet. Ich möchte nun folgendes tun:
    Ich will den Inhalt aus der MySQL DB in meine lokale SQLite übertragen. Tabelle für Tabelle.
    Dieser "Synchronisierungsvorgang" sieht so aus, dass als erstes eine Arraylist erstellt wird mit den Daten aus der Online-DB, dann wird die lokale Tabelle geleert und dann wird die Arraylist aus dem Netz in die lokale DB eingefügt. (Ich weiß das ist kein richtiges synchronisieren, aber für mich reicht das erstmal ;) )
    Wenn ich nun eine Tabelle "synchronisieren" will, dann funktioniert das einwandfrei. Nehme ich aber eine andere dazu, dann kriege ich andauernd irgendwelche SQL-Fehler, dass ich meine SQLite DB nicht richtig geschlossen habe o.Ä..
    Ich denke, dass es daran liegt, dass die Abfragen nicht sequentiell ablaufen, sondern sich irgendwie überschneiden.
    Ich suche also nach einer Lösung, die mir es ermöglicht erst die erste Tabelle zu syncen, und erst wenn die erste fertig ist, dann soll die nächste starten usw.
    Jemand eine Idee? Ich hab schon an ASync Tasks gedacht und auch schon gegoogelt, allerdings weiß ich nicht wie das genau funktionieren soll und außerdem ist die "Synchronisierungsreihenfolge" und die zu syncenden Tabellen immer unterschiedlich.
    Für Eure Hilfe bin ich äußerst dankbar!


    Gruß


    M3doXX

    Hallo Khh,


    hättest du eventuell Codeschnipsel für mich?


    Ich hatte das ja schonmal probiert. Nur irgendwie hatte ich da ein Problem, dass die einzelnen Skripte durcheinander ausgeführt wurden und ich nicht genau wusste wie ich die explizit nacheinander ausführen kann...


    Gruß


    M3doXX

    Hallo UweApps,


    ja phpmyAdmin läuft. Das Problem ist aber, dass ich den Dump aus der App heraus erstellen will. Sprich : Ich klicke in meiner App auf einen Button und dann wird ein Dump von meiner MySQL (online) DB erstellt und in meine lokale DB eingelesen.
    Gibt es eine Möglichkeit phpmyadmin von aussen zu sagen, dass es einen Dump machen soll?
    Brauche ich da nicht ein eigenes Skript?


    Gruß


    M3doXX

    Also ich hab jetzt erstmal rausgefunden, wie ich das rein theoretisch machen kann.
    Ich schreibe ein PHP-Skript, dass mir auf meinem Server den dump erstellt und den lade ich dann runter und lese ihn in meine SQLite DB ein.
    Soweit die Theorie.
    Allerdings scheitert es jetzt bei mir schon bei Schritt 1: Das PHP Skript :D
    Hat jemand vielleicht einen Codeschnipsel für mich, der ein MySQL Dump erstellt? Ich habe bereits zwei Skripte ausprobiert, die ich in den Weiten des WWW gefunden habe, aber die haben beide nicht funktioniert...
    Also wenn mir da bei Schritt 1 schonmal jemand weiterhelfen könnte, wäre das super!!!
    Besten Dank


    Gruß


    M3doXX

    @ChampS:


    Die Lösung finde ich auch super (wenn das so möglich ist...)
    Hat jemand eine Idee wie das funktionieren kann? Ich hab mal nach MySQL Dump gegoogelt, aber nichts wirklich gutes gefunden.
    Zumindest nicht, wie ich aus der App raus die .sql erstellen kann.
    Würde mich über jede Hilfe freuen!
    Besten Dank!!


    M3doXX

    Hallo zusammen,


    ich möchte folgendes umsetzen:


    Ich habe eine MySQL DB und eine SQLite DB. Ich möchte diese in meiner App "synchronisieren", d.h. für mich vereinfacht: Ich will einfach nur die lokale DB leeren und sie mit den Daten aus der MySQL füllen! Also keine großen Sync-Algorithmen oder so ;)
    Jetzt habe ich in den Datenbanken jeweils vier Tabellen, die jeweils nacheinander geleert und wieder gefüllt werden sollen.
    Für jede Tabelle gibt es eine Methode, die die lokalen leert und wieder füllt.
    Dafür habe ich in meiner Activity eine ASync-Task erstellt, die solange einen Ladebalken zeigt, bis fertig synchronisiert wurde.
    Jetzt kriege ich aber jede Menge Exceptions beim synchronisieren.
    Meine generelle Frage wäre: Wie kriege ich das hin, dass eine Methode nach der anderen ausgeführt wird?
    Ich habe nämlich das Gefühl, dass die sich überschneiden, weil in den Exceptions oft steht: "database is locked".
    Also das ich z.B. die Methoden so lange sperre, bis die vorherige fertig ist?
    Besten Dank


    Gruß


    M3doXX

    Hi,


    ich habe gestern mal das mit den Settings rausgenommen und dann kriege ich die gleiche Fehlermeldung mit einem anderem SQL-Statement:


    Code
    sqlite returned: error code = 17, msg = statement aborts at 17: [INSERT INTO TEST_GAME(DATE, TIME, PLACE, REFEREE, HOME, GUEST) VALUES(?, ?, ?, ?, ?, ?);] database schema has changed


    Kann das vielleicht irgendwie damit zusammenhängen, das sich die Instanzen überlagern, bzw das das Ganze nicht wirklich synchron läuft?
    Aber ich mache das ja mit ASync-Tasks also sollte es doch eigentlich rund laufen oder? Ich habe übrigens gerade festgestellt, dass die Funktion nicht immer richtig funktioniert! Ab und zu synchronisiert er nicht alle Objekte oder manche doppelt!? Also liegt doch was im Argen..
    Komplett debuggt habe ich das Ganze noch nicht. Werde ich heute Abend mal ausprobieren, hab gestern inner Uni gelernt wie das geht :D
    Nur ich hab kein Plan wo ?! Ouh man das is echt zum ko**** hier :D
    Gruß


    M3doXX

    Hi matthias,


    ich habe den alles mal auf null gesetzt (Cache leeren, clean, Neuinstallation) und der Fehler besteht immer noch.
    Es ist ja nicht nur das er mir diesen Fehler ausgibt, sondern auch "InsertGame funktioniert nicht" an dieser Stelle:



    Er müsste doch eigentlich "InsertGame funktioniert" ausgeben, da die Variable "res" nach der DB-Abfrage auf true gesetzt wird?!
    Soll ich das wirklich einfach ignorieren? Irgendwie kann ich mich damit nicht zufriedengeben.
    Gruß


    M3doXX

    Hallo zusammen,


    also ich habe folgendes Problem:
    Ich möchte meine mySQL DB mit einer lokalen SQLite DB synchronisieren.
    Dazu leere ich die SQLite Tabelle und will in einer for-Schleife die Daten aus der MySQL DB auslesen und dann Objekt für Objekt in die SQLite DB schreiben.
    Das leeren funktioniert und das einfügen eigentlich auch, allerdings sagen meine LogCat Ausgaben etwas anderes.
    Hier mal meine Funktionen.
    In der Activity sieht das Ganze so aus:



    Das ist also eine ASyncTask, die solange einen ProgressDialog anzeigt, bis das Synchronisieren fertig ist.
    Hier wird die Funktion access.syncGames(ScheduleActivity.this) aufgerufen. Die sieht wie folgt aus:



    Hier wird als erstes mit

    Code
    sqLiteAccess.clearGameTable(context)

    die SQLite Tabelle geleert. Dann wird in der for-Schleife nach und nach mit

    Code
    sqLiteAccess.insertGame(homeTeam, guestTeam, place, referee, gameDate, time, context)

    die Spiele in die SQLite DB eingefügt.
    Diese beiden Funktionen bestehen wieder aus AsyncTasks die wie folgt aussehen:



    und



    Die Funktionen die dahinter liegen sind:


    Java
    public void clearGameTable()
    	{
    		gameDataBase.execSQL("DELETE FROM '"+phpFileName+"'");
    		gameDataBase.execSQL("VACUUM");	
    	}


    und



    Also mein Problem ist nun folgendes: LogCat sagt mir:


    1. clearGameTable funktioniert
    2. sqlite returned: error code = 17, msg = statement aborts at 14: [SELECT VALUE FROM SETTINGS WHERE SETTING = 'team'] database schema has changed
    3. insertGameTable funktioniert nicht!


    Dieses Setting holt mir einfach nur den Datanbank Präfix aus der SQLite DB.
    Wie gesagt das Ganze funktioniert eigentlich, aber der LogCat sagt halt was anderes.
    Jemand eine Idee was das bedeuten könnte? Ich hoffe das war nicht zuviel Code auf einmal, aber ich habe ewig bei Google gesucht und alles ausprobiert und Ihr seid (hoffentlich) meine letzte Rettung!!
    Besten Dank schonmal!


    Gruß


    M3doXX

    Hallo zusammen,


    ich möchte einen String in ein Date Format bringen und das Date Format in Millisekunden.
    Habe nun folgende Methode:



    Der String time enthält "15:00".
    Die Ausgabe der drei System.out Anweisungen sind wie folgt:


    15:00
    Thu Jan 01 16:00:00 MEZ 1970
    54000000


    Ich benutze die timeInMillis für einen Intent, der einen neuen Kalender Eintrag erzeugt.
    Wenn der nun die System-Activity "NeuenKalenderEintragErzeugen" aufruft, ist die startZeit auf 17:00 gesetzt ?!?!?!
    Was läuft da falsch???
    Gruß


    M3doXX

    Habe nach längerer Suche in Google jetzt doch anscheinend das gefunden, was ich brauche(Listener).
    Hier mal der Link:
    http://stackoverflow.com/quest…ener-to-a-custom-variable


    In der Activity brauche ich ja nur die Methode onStateChange() und onCreate() .
    In der Klasse InternetManager habe ich die Methode doYourWork() nun wie folgt gefüllt:



    Edit:
    Es funktioniert schon, das der Status an die Activity zurückgegeben wird beim Start der App.
    Allerdings soll er wenn ich das Internet ausschalte bzw anschalte den Status ja ändern und an die Activity zurückgeben.


    Was muss ich tun?
    Danke!


    Gruß


    M3doXX

    Hallo zusammen,


    meine App ist nur mit Internet Zugang zu benutzen. Das heißt die App soll eigentlich ständig testen, ob man mit dem Internet verbunden ist.
    Ich habe schon eine Methode die erfolgreich testet, ob eine Verbindung besteht.
    Wenn die Verbindung nicht besteht, soll er so lange einen ProgressDialog anzeigen, bis die Verbindung besteht.
    Es geht mir hier nicht um den ProgressDialog, sondern eher darum, wie die Methode aussehen muss, damit dauerhaft die Connection getestet wird.
    Ich hab das Ganze mal mit einem Thread versucht, allerdings weiß ich nicht ob das die beste Möglichkeit ist und außerdem funktioniert es auch nicht ;)
    Hier mal der Code:



    In der onCreate() der main-Activity wird ConnectionTest() aufgerufen.
    Jemand eine Idee warum das nicht funktioniert, oder wie man das anders lösen kann?
    Bin für jede Hilfe dankbar!


    Gruß


    M3doXX

    Hallo allezusammen,


    ich habe folgendes Problem:
    Ich habe eine Activity, die Informationen anzeigt. In der Activity gibt es eine Methode update(), die diese Informationen aktualisiert. Die Informationen kommen aus einer MySQL DB.
    Dann habe ich nun noch einen Service, der über die Activity gestartet wird. Der Service soll in festen Intervallen die update() Methode der Activity aufrufen und wenn sich eine Variable ändert, dann soll er eine Nachricht in der Statusbar ausgeben. Wie kann ich nun die update() Methode im Service aufrufen?
    Ich bin bei google nicht fündig geworden.
    Besten Dank im Vorraus


    mfG


    M3doXX

    Das es den Quellcode dort gibt hatte ich nicht gesehen ;)
    Es funktioniert jetzt soweit!
    Allerdings hab ich jetzt ein neues Problem. Undzwar funktioniert das Activity öffnen, aber wenn ich einen AlertDialog öffnen möchte, dann kriege ich tausend Fehlermeldungen.
    Wenn ich die Activity öffne, dann benutze ich diese Methode:


    Java
    public void startChildActivity(String Id, Intent intent) {     
          Window window = getLocalActivityManager().startActivity(Id,intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP));
          if (window != null) {
              mIdList.add(Id);
              setContentView(window.getDecorView()); 
          }    
      }


    Jemand eine Idee wie ich das für einen AlertDialog umschreiben muss, oder woran es sonst liegen könnte?
    Weil wenn ich einen AlertDialog benutze, brauche ich ja kein Intent.
    Hier noch die Fehlermeldungen:



    Gruß


    M3doXX