ADB命令獲取Android UID

Shengjie發表於2018-10-08

有三種方案:

1. adb shell dumpsys package <packagename> | grep userId=

先通過 "adb shell dumpsys package <packagename>" 命令得到應用詳細資訊,然後利用 "grep userId=" 定位到 Uid。

如:

~ adb shell dumpsys package com.predict.horoscope.daily.zodiac.sign | grep userId=
userId=10096 gids=[3003, 1028, 1015]

2. adb shell cat /proc/<pid>/status | grep Uid

這個命令中的關鍵是 pid,可通過以下命令獲取。

adb shell ps | grep <packagename>

如:

~ adb shell ps | grep com.predict.horoscope.daily.zodiac.sign
u0_a96    1061  199   1614212 95232 ffffffff 00000000 S com.predict.horoscope.daily.zodiac.sign

第二列的值 1061 就是 pid。代入到獲取 Uid 的命令中的結果如下:

~ adb shell cat /proc/1061/status | grep Uid

Uid:    10096   10096   10096   10096

3. adb shell cat /data/system/packages.xml | grep <packagename>

依次執行以下命令:

adb root
adb remount
adb shell cat /data/system/packages.xml | grep <packagename>

這條命令的執行需要 root 許可權,使用受限,建議用第一、二種方法。

相關文章