通過修改default.prop 中 ro.secure=0 , 的確可以讓 adb shell 獲取root 以執行各種命令.
但發現安裝的app 就沒那麼好運了, 會提示:
"su: uid 100xx not allowed to su" ,然後失敗退出.
解決方法原來非常簡單:
android 2.1 的源代碼裏頭,打開:
system/extras/su/su.c
發現有判斷:
冒汗, 這機制也太稀疏平常了...
直接把 return 1; 註釋 , 在源代碼根目錄下編譯:
. build/envsetup.sh
make su
以補丁包刷上機器,測試方法:
su app_xx (app_xx , 當然是機器中已經被申請的uid) ,提示符號從 # 到 $
su
可以發現 , su後 , 提示符重新改回 # , 以爲 這個app_xx , 已經可以進入root.