2012-04-25 47 views
0

雖然我申請我的應用.exec("su")的特權許可,但我的SuperSU應用彈出來要求我按「授予」按鈕以允許我的應用獲得root權限。由於某些原因,我的屏幕不夠大,使我無法按下SuperSU應用程序附帶的「授予」按鈕。我假設adb命令sendevent可能會幫助我完成這一步,但是很難猜測按下按鈕的座標。Android adb命令來模擬觸摸事件和超級用戶apk建議

有沒有其他方式可以做到這一點或其他替代應用程序可以做到這一點,而無需按下授予按鈕?

任何線索將不勝感激。

+0

您正在使用哪種設備? – 2012-04-25 04:03:46

+0

這是一個具有非常小的屏幕的定製設備。 – Sam 2012-04-25 05:25:38

回答

0

您應該定製超級用戶應用程序來重新定位按鈕。

或者,如果你在設備上有一個root shell(通過adb也許?),你可以創建一個setuid的複製工具箱來消除對按鈕對話框的需求,但是這會讓它可用於設備上的任何東西,風險很大。

無論如何,它看起來像你也可能誤解了超級用戶能夠做的事情:你的應用程序不能以root身份運行,它只能啓動一個輔助進程。

比任何這些開放式的根訪問思路都要有一個固定的功能,靜態鏈接的setuid可執行文件不接受任何您希望發生的特權任務的輸入。程序越短,審覈它的機會就越大。

+0

嗨克里斯, 你能告訴我如何實現它,因爲現在我只是爲我自己的根植設備做一些實驗。 「或者,如果你在設備上有一個root shell(通過adb或許?),你可以創建一個setuid複製工具箱來消除對按鈕對話框的需要,但是這會讓設備上的任何東西都可用,相當危險。「 謝謝。 – Sam 2012-04-25 07:09:56

+0

如果您打算對設備採取嚴肅態度,我認爲您最好通過自己研究setuid可執行文件的概念,首先了解您正在進入的內容。然而,我會提到的一件事是,Android上的chmod需要八進制權限 - 它不理解符號權限,它可以用於許多桌面unix中的方便。 – 2012-04-25 17:29:10

+0

謝謝克里斯。我會接受你的建議。 – Sam 2012-04-26 06:07:25