Dateisystem

  • Ich habe folgendes Problem.
    In meiner App beziehe ich Daten von einen Onlineserver. Diese Daten sollen in einer Datei gespeichert werden. Gebaut wurde die Funktion so wie in der Android Doku beschrieben.


    Code
    String FILENAME = "hello_file";
    String string = "hello world!";
    
    
    FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
    fos.write(string.getBytes());
    fos.close();


    Beim Testen auf dem PC (mit Emulator) funktioniert alles wunderbar. Nachdem die App auf dem Smartphone getestet werden soll, stürtzt die App ohne Fehlerbericht ab. Ich konnte durch ausführliche Tests die Ursache beim Speichern der Datei lokalisieren.
    Hat jemand einen Tip wie ich diesen Fehler beheben könnte. Was muss ich sonst noch beachten beim Speichern und Auslesen von Dateien.


    Danke für Eure Tips

  • Ohne den gesamten Code zu sehen wird das natürlich etwas schwierig.


    Da openFileOutput() die Wahl des Ordners automatisch regeln sollte, würde ich das als Problemquelle erst einmal ausschließen.
    Nur das Ausbleiben einer Exception (im LogCat) verwundert mich sehr.


    Wenn Du einen Breakpoint setzt, den Debugger startest und Dich Schritt für Schritt durchklickst, was passiert dann?

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • die App läuft auf dem PC problemlos. Der Fehler tritt auf dem Smartphone auf. Eine Datei ist bei der Installation noch nicht vorhanden. Soll also erst gespeichert werden.


    hier mal der Code zum Holen der Daten und speichern der Datei:



    der Code zum Holen der Datei:


  • Sorry immer noch gleiche Antwort!!


    die App läuft auf dem PC problemlos. Der Fehler tritt auf dem Smartphone auf. Keine Fehleranzeige im Debugger, keine Exception auf dem PC. Funktionalität problemlos.

  • Auch wenn Du es dick und fett in rot schreibst, ändert es nichts daran, dass Du den Debugger auf dem Smartphone laufen lassen sollst.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Samsung… +schüttel+
    Ich weiß schon, warum ich als Referenzgerät immer die aktuellen Nexus Teile nutze…


    Eventuell ein SimLock/ROM Problem.
    http://www.sammobile.com/forum/showthread.php?t=8341


    Oder der KIES-Treiber spackt mal wieder rum.
    http://android.stackexchange.c…-see-connected-samsung-s4


    Check noch mal aus, ob das Gerät auch wirklich für Debugging zugelassen ist.
    http://stackoverflow.com/a/16256100

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Ich hatte mit dem S2 damals auch nur Probleme und genau deshalb schüttel ich mich so lange ich will. :P


    Stock ROM oder gerootetes/geleaktes ROM?


    Jedenfalls wirst Du dafür wohl andere Quellen als mich nutzen müssen – keinen Plan von aktuellen Samsung Geräten.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Die Treiber für Samsung-Geräte müssen meiner Erfahrung nach trotzdem installiert werden.

    MfG,
    Christopher


    Eine gewisses Maß an Freundlichkeit kann man auch von Menschen im Internet erwarten.
    Das Forum basiert komplett auf der Freiwilligkeit ihrer Nutzer und diese sollen sich wohlfühlen! Daher seid bitte freundlich. Danke

  • liegt wohl nicht am samsung


    hab inzwischen ausgiebig getestet (passiert auch auf anderen Geräten).
    Was mich halt stutzig macht, ist der Umstand, dass es im emulator funzt und auf einem echten Endgerät nciht. Könnte es sein, dass es probleme mit der permission auf dem endgerät gibt? Weil emulator == Android, Smartphone == Android. Hab auch schon mit verschiedenen Java Versionen rumprobiert.
    Immer das Gleiche, Absturtz.


    Keine ROM Modifikationen, alles im original Zustand

  • Und was sagt der Debugger auf anderen Geräten?
    Ohne Debugger auf dem Gerät wirst Du dieses Rätsel nicht lösen können.
    Insofern wäre es für Dich sinnvoll, es irgendwie hinzubekommen, dass sich der Debugger mit einem Deiner Geräte verbindet.


    Verlass Dich da nicht zu sehr auf Eclipse sondern frag den adb mal manuell, welche Geräte er findet.


    Da es auf dem Emulator läuft und auf den Smartphones nicht, liegt das Problem definitiv am adb.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Würde ansonsten den Treiber nochmal neu installieren. Alternative: Gucken ob Kies das Handy erkennt ;)
    ADB abfragen und ansonsten mal wireless adb ausprobieren.
    Android Studio zum Test installieren oder eine Log-App installieren.
    Das sind wohl deine Optionen

    MfG,
    Christopher


    Eine gewisses Maß an Freundlichkeit kann man auch von Menschen im Internet erwarten.
    Das Forum basiert komplett auf der Freiwilligkeit ihrer Nutzer und diese sollen sich wohlfühlen! Daher seid bitte freundlich. Danke

  • Also App wurde zum Laufen gebracht.


    War ein Policy-Problem auf dem Endgerät -> muss man auch erstmal drauf kommen.
    Das mit dem Treiber muss ich nochmal ausprobieren.



    Vielen Dank für Eure Hilfe.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!