So erhalten Sie den Benutzernamen mithilfe von uid auf Android

8

Ich habe mehrere Utensilien wie folgt: 10022, 10011, 1000

Eigentlich weiß ich, dass die Benutzernamen von ihnen u0_a22 , u0_a11 , system sind.

Aber die Frage ist, wie kann ich den Benutzernamen mit Codes bekommen? Es gibt überhaupt keine / etc / passwd Datei.

    
Haoliang 04.05.2014, 08:08
quelle

2 Antworten

2

Ich habe eine Dienstprogrammklasse geschrieben, um den UID / GID-Namen durch Festcodierung von Werten aus android_filesystem_config.h .

Verwendung:

%Vor%

AndroidFilesystemConfig.java

%Vor%

Reflektion verwenden:

Von odexides Antwort inspiriert, hier ist eine wirklich hässliche Reflexion, die ich nicht empfehlen würde, die den UID / GID-Namen von getpwuid (uid_t) :

%Vor%     
Jared Rummler 20.01.2015 23:34
quelle
0

Die UIDs sind für die Android-Implementierung von libc (bionic) fest codiert und werden auch in Bereichen für Apps bereitgestellt. android_filesystem_config.h erläutert das Mapping.

Sie sollten die bionischen Stubs (c ++) für getpwuid ( uid_t) .

Weitere Informationen zu den Stubs finden Sie in dieser AOSP-Dokumentation .

    
odexcide 20.01.2015 23:11
quelle

Tags und Links