Re: [問題] 軟體需要root權限?
推
03/17 16:35,
03/17 16:35
推
03/17 19:59,
03/17 19:59
針對這個問題 我今天剛好有實作到
首先請看 http://0rz.tw/FcRGe
這裡是ANDROID內建的SU程式,請注意第62行
if (myuid != AID_ROOT && myuid != AID_SHELL)
這是非常關鍵的地方
當你要用內建的 跑shell command的時候,他會檢查你是不是ROOT或者SHELL
SHELL => 很明顯就是ADB SHELL (adbd)
這就表示你可以在模擬器裡面接adb shell -> 然後打su 做一些事情
但如果你安裝一些需要ROOT的應用程式,是不能跑的,因為他們的UID不是ROOT也不是SHELL
也就是說如果你要做應用程式 且要能夠做些ROOT(UID=0)的事情,
你就必須要把內建的su砍掉,換成你修改版的(比方說把第62行相關位置拿掉)
這樣你就可以輕鬆的做root的事情
當然現在最流行的Superuser(授權程式) 他就是搭配修改版的su而來
而且他還有黑白名單那些,所以功能比較強大
有興趣 可以參考CyanogenMod的原始碼
https://github.com/CyanogenMod/android_system_extras/tree/gingerbread/su
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.136.121.138
推
04/12 02:39, , 1F
04/12 02:39, 1F
推
04/12 11:13, , 2F
04/12 11:13, 2F
推
04/12 17:43, , 3F
04/12 17:43, 3F
討論串 (同標題文章)
AndroidDev 近期熱門文章
PTT數位生活區 即時熱門文章
-4
30