0

アプリの特権権限をリクエストしているとき.exec("su")に、SuperSUアプリがポップアップして、[付与]ボタンを押して、アプリがルート権限を取得できるようにするように要求します。何らかの理由で、画面が十分に大きくないため、SuperSUアプリに付属の[許可]ボタンを押すことができません。adbコマンドsendeventはこのステップを完了するのに役立つと思いますが、ボタンを押すための座標を推測するのは非常に困難です。

許可ボタンを押さずにこれを実行できる他の方法や他の代替アプリで実行できる方法はありますか?

手がかりは大歓迎です。

4

1 に答える 1

0

ボタンを再配置するには、おそらくスーパーユーザーアプリをカスタマイズする必要があります。

または、デバイスにルートシェルがある場合(おそらくadbを介して?)、ボタンダイアログの必要性を排除してsetuidコピーツールボックスを作成できますが、それではデバイス上のすべてのユーザーが利用できるようになり、非常に危険です。

いずれにせよ、スーパーユーザーが実行できることを誤解している可能性もあるようです。アプリはrootとして実行できず、実行するヘルパープロセスのみを起動できます。

これらのオープンエンドのルートアクセスのアイデアのどれよりもいくらか優れているのは、固定機能を持ち、静的にリンクされたsetuid実行可能ファイルが入力を受け入れず、実行したい特権タスクを実行することです。そのプログラムが短いほど、それを監査する可能性が高くなります。

于 2012-04-25T06:04:56.050 に答える