Ich muss eine interne Datei aus dem Dateisystem intakt bekommen. Ich sehe die Datei mit dem ES File Explorer in LocalDevice/data/data/com.myapplication/file/user.json
. Das Gerät (Nexus-7) ist gerootet. Ich kann die Datei kopieren und an einem anderen Ort einfügen, aber ich denke, dass dies die Art der Datei ändern kann. Eine Möglichkeit wäre, es per E-Mail zu versenden, aber Google Mail (oder was auch immer) hat keinen Zugriff auf diesen Ordner. Gibt es eine Möglichkeit, Gmail die Berechtigung zu erteilen? oder eine andere Möglichkeit, die Datei herauszubekommen?
Ich debugge eine App, die ich erstelle, in der diese JSON-Datei programmgesteuert von res/raw an den Speicherort data/data/... kopiert wird. Das Parsen der JSON-Datei in data/data löst eine Parsing-Ausnahme aus, und deshalb möchte ich mir die geschriebene JSON-Datei ansehen, um zu sehen, ob sie korrekt kopiert wurde.
Wie Sie vielleicht bereits wissen, können Sie auf diese Dateien nur mit root zugreifen, dh wenn Ihr Gerät gerootet ist.
Ich kann die Datei kopieren und an einem anderen Ort einfügen, aber ich denke, dass dies die Art der Datei ändern kann.
Was? Nein, das Kopieren einer Datei ändert den Inhalt der Datei nicht. Sie sind zum Zeitpunkt des Starts des Kopiervorgangs gleich. Idealerweise sollten Sie sicherstellen, dass kein Prozess ein offenes Write/Append-Datei-Handle an der Datei hat, indem Sie die relevanten Prozesse beenden (z. B. com.myapplication
)
Zahlwang
Zahlwang
myapplication
es nicht ausgeführt wird, und dann versucht, die Datei als Anhang in Google Mail zu senden, aber ich erhalte immer noch den Fehler Anhang konnte nicht gefunden werden.Izzy
/data/data/com.myapplication/file/user.json
z. B. zu kopieren/sdcard/user.json
, dann 2) öffnen Sie diesen neuen Speicherort in Google Mail, um die Datei anzuhängen, und schließlich 3) löschen Sie sie optional,/sdcard/user.json
da sie nicht mehr benötigt wird.