Androidのユーザー/グループID情報はどこに保存されますか、またどのように解釈しますか?
私はかなり長い間疑問に思っていました。AndroidはユーザーIDとグループID情報をどこに保存しますか? たとえば、標準のLinuxでは、ユーザーとグループの情報はそれぞれ/etc/passwdと/etc/groupに保存されます。ユーザーをグループに追加すると、そのユーザー名/ uidがそのグループ内のユーザーのリストに追加されます。たとえば、私のオーディオグループエントリは/etc/group次のようになります。 audio:x:29:pulse,edge-case pulseはpulseaudioデーモンのuidにマップされ、edge-caseはLinuxボックスのuid(1000)にマップされます。 私が理解しているように、Androidにインストールされる各アプリは独自のuidとgidを取得します。これは、Androidで発生するアプリの「サンドボックス化」の基盤です。他のアプリと共有する情報とそうでない情報を指定するアプリプログラマーによって作成されたマニフェストファイルに宣言がない限り、別のアプリが所有するプロセスまたはファイル。これは、インストール中にアプリがインターネットグループまたはそのようなものに追加することを要求することにより、ネットワークサービスへのアクセスを取得または要求する方法でもあります。NETネットグループの名前を引用しないでください。 INET6、どちらにしても、Androidでこのメカニズムを使用してアプリケーションに許可できるネットワークアクセスにはいくつかのレベルがあります。 私の質問は、この情報はAndroidのどこに保存されていますか? さらに、変更することは可能ですか? glibcスタックと、その中のデータを/etc/{passwd,group}ファイルに統合したいと思います。信頼してください。それらは私の電話に存在します。他にもたくさんのグッズがインストールされています。 更新:より多くの検索を実行しており、 これが私が探しているものかもしれません。 もう少し掘り下げて、探しているものがすべて揃っていることを確認する必要があります。 更新:(2014年6月27日5時40分) 誰かが私が何をしているのか、何について話しているのかわからないと思っているので、はっきりさせてください。 AndroidのユーザーUIDは100000でオフセットされ、アプリUIDはユーザー番号_ app番号にマッピングされると10000でオフセットされます。したがって、psがu0_a10のようなものを示す場合、UID 100000のユーザーはUID 10010でアプリを実行しています。 system / core / include / private / android_filesystem_config.hからUIDおよびユーザー/デーモン名を取得し、それらを使用して/ etc / passwdおよび/ etc / groupファイル(Androidボックス上)を更新しました(例:/ etc / passwdファイル(Androidボックス上)は次のようになります。 .... brainard:x:100002:100002:Professor Brainard,0420,,:/home/brainard :/bin/bash radio:x:1001:1001::/data/radio:/bin/false bluetooth:x:1002:1002::/data/bluetooth:/bin/false graphics:x:1003:1003::/home/graphics:/bin/false input:x:1004:1004::/home/input:/bin/false camera:x:1006:1006::/home/camera:/bin/false log:x:1007:1007::/home/log:/bin/false compass:x:1008:1008::/home/compass:/bin/false mount:x:1009:1009::/home/mount:/bin/false wifi:x:1010:1010::/home/wifi:/bin/false …