0

低レベルの raw ソケット (純粋な C ルーチンの下) を使用する iOS アプリケーションを作成しています。現在、Xcode 4.6 を使用してアプリケーションを生成しています。

このアプリを常にルート レベルでデバッグする必要がありますが、シミュレーターはルート ユーザーとして実行できません。すでに gdb とバイナリ アプリで setuid (chmod 4755 または chmod u+s) を試していますが、実行するとルート レベルでデバッグが実行されません。Xcode を構成しようとしましたが、成功しませんでした。これは、デバッグ スキームの [ルートとして実行] オプションが無効になっているためです。

root レベルで動作するアプリケーションを開発した人はいますか? つまり、シミュレーター/デバッガーでルートとして実行されますか? Xcode 4.6 (OS Mountain Lion) で root としてシミュレーター (gdb、lldb など) でアプリを実行するにはどうすればよいですか?

4

2 に答える 2

0

これは iOS ではサポートされていません。これは OS X のみの機能です。iOS デバイスでは root として実行できません。

(OS X に関する古い回答:) 私はこの機能を毎日使用しています。setuid を使用する必要はありません。Xcode の「ルートとして実行」フラグだけを使用してください。問題は、 4.6 で廃止されたgdb との統合にあると思われます。lldb に切り替える必要があります。(Xcode 5.1 に切り替えることもお勧めしますが、それは別の問題です。)

于 2014-03-31T19:17:27.470 に答える
0

通常、root として実行することはお勧めできません。また、実際のデバイスで特別な書き込みアクセスを取得することはできないと思いますが、Mac で root としてログインし、そこから Xcode を起動してみてください。試したことはありませんが、「ルートとして実行」オプションが有効になる場合があります

于 2013-06-18T19:52:53.440 に答える