ich ein Verzeichnis in meiner app internen Speicher erstellt haben (/data/data/com.my_app) und gab globale Lese-/Schreibrechte auf das Verzeichnis über die MethodeAndroid/Linux-Dateiberechtigungen Problem
context.getDir(DATA_DIR_NAME, Context.MODE_WORLD_READABLE | Context.MODE_WORLD_WRITEABLE);
Durch meine app, überprüfte ich, dass die linux-Dateiberechtigungen korrekt sind:
drw-rw-rw- app_71 app_71 2010-11-16 18:38 app_data
Und ich war in der Lage/schreiben von Dateien in lesen/out-of Verzeichnis App_Data just fine. Einer meiner Entwickler konnte jedoch plötzlich nicht mehr in das Verzeichnis schreiben. Unsere Anwendung hat Probleme beim Zugriff auf das Verzeichnis auf seinem Gerät.
Das Merkwürdige ist, dass die Dateiberechtigung für das Verzeichnis immer noch die gleiche ist. Wir können keine Art von Schreiboperationen in das Verzeichnis durchführen, und wir können auch keine Dateien innerhalb des Verzeichnisses mehr lesen (die Dateien erhielten zuvor die globale rw-Berechtigung).
Das einzige, was wir tun können, ist adb shell ls /data/data/my_app/app_data
, um unsere Liste der Dateien zu sehen. Doing adb shell ls -l /data/data/my_app/app_data
gibt seltsamerweise nichts zurück. Und wir können auch keine CD in das Verzeichnis aufnehmen.
Hat jemand irgendeinen Zeiger auf, was das Problem ist oder wie man das löst? Wir sind am Ende unseres Geistes.
Sehr geschätzt.
Gibt es irgendetwas Nützliches in den Protokollen, während Sie versuchen, auf das Verzeichnis von dem Telefon zuzugreifen, das es nicht öffnet? – apps
ADB Shell-Befehle gibt nichts Nützliches zurück. Wenn ich versuche, eine Datei im Verzeichnis über meine Anwendung zu lesen/schreiben, wird eine Ausnahme ausgelöst, die die Berechtigung verweigert beschreibt. Mit drw-rw-rw- Berechtigungen für das Verzeichnis würde ich erwarten, zumindest eine Datei schreiben zu können. Und nichts außer der Ausnahme stacktrace wird in logcat gedruckt. – LLTLL
Veröffentlichen Sie das Backtrace? – JimR