Wie schreiben Apps Daten in das Dateisystem auf einem nicht gerooteten Gerät?

Benutzer-Apps und -Daten werden in /data/appbzw. gespeichert /data/data. Aber wir können das (nicht einmal) ohne Root-Rechte sehen. Ich möchte also wissen, ob das Gerät nicht gerootet ist, wie Benutzer-Apps installiert (Apks werden kopiert) /data/appund wie Benutzer-Apps Daten in schreiben /data/data? Mit anderen Worten: Was erlaubt / erlaubt Apps, Daten ohne Root-Zugriff zu schreiben?

Antworten (1)

Das Android-System verfügt nicht über die herkömmliche /etc/passwd-Speicherung für Benutzer und Gruppen. In Android werden Benutzer und Gruppen verwendet, um Prozesse zu isolieren und Berechtigungen zu erteilen. Das Android-System erstellt einen Benutzer pro Anwendung, wenn eine Anwendung installiert wird. Daher werden Anwendungsdatendateien in gespeichert /data/data/<app-name>/und können nur von diesem Anwendungsprozess gelesen und beschrieben werden.

Hier ist ein Teil der Ausgabe von ls -l /data/data:

drwxr-x--x u0_a31   u0_a31            2015-03-29 15:34 com.lenovo.themecenter
drwxr-x--x u0_a82   u0_a82            2015-02-27 23:20 com.lenovo.videoplayer
drwxr-x--x u0_a75   u0_a75            2013-12-31 21:30 com.lenovo.weatherserver
drwxr-x--x u0_a39   u0_a39            2013-12-31 21:30 com.lenovo.widetouch
drwxr-x--x u0_a73   u0_a73            2015-02-25 22:51 com.lenovo.wifiswitch
drwxr-x--x u0_a19   u0_a19            2013-12-31 21:30 com.lenovo.xlauncher

Sie werden leicht feststellen, dass jeder Ordner nur mit Lese-/Schreibberechtigungen für den entsprechenden Benutzer/die entsprechende Gruppe der App erstellt wird.

Mehr dazu hier .