[Fixed] Fehler beim Laden von Städten

...falls Ihr Fehler in TheoTown findet
torwin
Settler
Reactions:
Posts: 3
Joined: Mon May 23, 2016 21:52
Plugins: Show

[Fixed] Fehler beim Laden von Städten

Post by torwin » Mon May 23, 2016 22:04

Seit einem der letzten Updates lassen sich gespeicherte Städte auf meinem Nexus 9 nicht mehr laden.
Ich verwende die aktuelle Android N Preview, aber vielleicht lässt sich das Problem trotzdem lösen.

Die App hat die Berechtigung zum Schreiben auf den Speicher. Es werden auch Daten gespeichert. Beim Öffnen kommt allerdings die Meldung "Laden fehlgeschlagen".

Ich habe beim Laden mal "adb logcat" laufen lassen und folgende Meldungen gesehen:

Code: Select all

E CityKeeper: java.util.zip.ZipException: Not in GZIP format
I StopWatch: Needed 3ms to process step Read file of load city
I StopWatch: Needed 0ms to process step Prepare city of load city
I StopWatch: Needed 3ms to proceed load city
I GameStack: Leave stage LoadCityStage
Wäre super, wenn sich das Problem lösen lässt.
Das Spiel ist nämlich sehr gut und ich würde es gerne wieder spielen können, ohne die Stände zu verlieren.

User avatar
Lobby
Developer
Reactions:
Posts: 3129
Joined: Sun Oct 26, 2008 12:34
Plugins: Show
Version: Beta
Phone model: S7 edge

Post by Lobby » Thu Jun 16, 2016 11:25

Sieht nach einem Fehler in der gzip-Implementierung aus :?
Besteht das Problem noch immer?

torwin
Settler
Reactions:
Posts: 3
Joined: Mon May 23, 2016 21:52
Plugins: Show

Post by torwin » Thu Jun 16, 2016 20:43

Das Problem besteht leider immer noch :(

Habe gerade das neuste Android Update installiert, es hat jedoch keine Besserung gebracht.

Wäre echt super, wenn das Laden wieder funktionieren würde. Hat ja schließlich unter Android N bis zu einem TheoTown Update funktioniert.

Es ist ein wirklich super Spiel. Würde es gerne wieder auf auf dem Tablet spielen können.

User avatar
Lobby
Developer
Reactions:
Posts: 3129
Joined: Sun Oct 26, 2008 12:34
Plugins: Show
Version: Beta
Phone model: S7 edge

Post by Lobby » Sat Jun 18, 2016 12:36

Vielleicht ist es auch ein Problem beim Speichern. Kannst du mir bitte mal eine solche Stadt an info[at]theotown.de schicken? Dann könnte ich das mal ausschließen. Die Städte liegen unter TheoTown/maps

Ansonsten fällt mir als naive Lösung nur ein, die Komprimierung ausschaltbar zu machen, aber dann werden die Dateien enorm groß.

User avatar
Lobby
Developer
Reactions:
Posts: 3129
Joined: Sun Oct 26, 2008 12:34
Plugins: Show
Version: Beta
Phone model: S7 edge

Post by Lobby » Fri Jun 24, 2016 11:43

Vielen Dank nochmals für die Unterstützung. Ich konnte den Fehler nun endlich lokalisieren. Er liegt im

Code: Select all

stream.skip(skipBytes);
Dieser wird beim Laden dazu benutzt, den Header der Stadtdatei zu überspringen. In Versionen vor Android N hat dieser problemlos funktioniert.

Offenbar wurde die Implementierung dahingehend geändert, dass nun nicht mehr die angegebene Anzahl von Bytes übersprungen wird, wenn man auf einem BufferedInputStream arbeitet. Daher muss man nun die Rückgabe der skip(...)-Methode beachten, und wenn nötig nochmals aufrufen. Das sieht nun so aus

Code: Select all

while (skipBytes > 0) {
    skipBytes -= stream.skip(skipBytes);
}
Alles in allem ist das Problem damit behoben (Version 158) :)

User avatar
theotheoderich
The Theo in TheoTown
Reactions:
Posts: 821
Joined: Thu Jan 24, 2008 14:11
Location: Ruhrgebiet
Plugins: Show

Post by theotheoderich » Fri Jun 24, 2016 15:14

wird

Code: Select all

skipBytes 
denn wirklich irgendwann zwingend immer

Code: Select all

> 0
, oder gibt es die Wahrscheinlichkeit einer Endlosschleife?
The box label said, "Requires Windows 10 or better.", so I bought an Amiga Computer.

User avatar
Lobby
Developer
Reactions:
Posts: 3129
Joined: Sun Oct 26, 2008 12:34
Plugins: Show
Version: Beta
Phone model: S7 edge

Post by Lobby » Fri Jun 24, 2016 19:18

'Sollte' nicht vorkommen können, sicherheitshalber habe ich noch ein

Code: Select all

stream.available() > 0
ergänzt. Das stellt sicher, dass noch Bytes zum Überspringen vorhanden sind.

torwin
Settler
Reactions:
Posts: 3
Joined: Mon May 23, 2016 21:52
Plugins: Show

Post by torwin » Fri Jun 24, 2016 21:26

Vielen Dank für die Behebung.
Funktioniert jetzt einwandfrei.

Post Reply Previous topicNext topic

Return to “Fehler und Probleme (Bugs!)”

Who is online

Users browsing this forum: No registered users and 2 guests