Frage

Zwei meiner Benutzer haben ein Problem mit meiner Android-Anwendung, OftSeen Gestures berichtet. Beide sind mit einem Motorola Droid. Die App speichert eine Textdatei, die nur eine Liste von Gesten Namen und Telefonnummern ist, beide Saiten. Es speichert die Datei auf den privaten Datenbereich. Ich weiß nicht, dass es dieser Code ist, die fehlschlägt, aber sie berichten, die verschwinden zugeteilten Nummern, nachdem das Telefon des Bildschirms Schlaf kommt. Da die Datei in OnCreate jedes Mal wieder gelesen wird, gehe davon aus mir die Datei existiert nicht auf Rückkehr.

Sobald ich meine Hände auf einem Droid bekommen kann ich es debuggen wird aber in der Zwischenzeit können Sie einen Grund, warum diese speichern Operation würde auf Droid fail (keine anderen Benutzer diese berichteten)?

    OutputStreamWriter out = new OutputStreamWriter(AppGlobal.getContext().openFileOutput(MAPPINGS_FILE_NAME, 0));

    for (String key : mMap.keySet()) {
        String number = mMap.get(key).number;
        out.write(String.format("%s,%s\n", key, number == null ? "" : number));
    }
    out.close();

AppGlobal.getContext gibt den Anwendungskontext und die MAPPINGS_FILE_NAME Entschlüssen zu "gesture_mappings.txt".

Wie ich sage, ich weiß nicht, dass dies das Problem ist. Es könnte etwas anderes zu tun mit staatlicher Verwaltung in der App sein. Wenn jemand ein Droid hat, vielleicht könnten sie die App von Android Market herunterladen und es für mich testen? Hinweis: Dies ist ein echter Hilferuf -. Kein Versuch, meine Downloads zu erhöhen

War es hilfreich?

Lösung

Dieses diagnostiziert als durch erweiterte Zeichensätze verursacht wird verursacht Zeilenumbrüche falsch interpretiert werden und wurde durch explizites Schreiben der Datei mit UTF-8 gelöst. Siehe Wie Lesen und Schreiben UTF- 8 auf der Festplatte auf dem Android? 1

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top