エミュレーター26.0.3を更新しましたが、今は実行できませんadb root
新しく作成したエミュレータのコマンド。
表示されるエラーは以下のとおりです。
adbd cannot run as root in production builds
私はadbd
を強制終了して再起動しました:
adb kill-server
adb devices
何も役に立たない、アイデアはありますか?
私は違いが何で、どのように異なるビルドを選択するかわかりませんが、作成中に以下の設定が有効になっている場合、ルートがあります
[クレジットは@Merkに属していますが、コメントではなく回答として投稿する必要があります。]
ルートアクセスを有効にするには、次のようなエミュレータイメージを使用します。
Google API Intel x86 Atomシステムイメージ
ではない
Google Play Intel x86 Atomシステムイメージ
テストするには、adb root
を実行します。それは言うべきです
rootとしてadbdを再起動する
または
adbdはすでにrootとして実行されています
ない
adbdはプロダクションビルドではrootとして実行できません
または、テストする場合はadb Shell
を実行し、プロンプトが$
で終わる場合はsu
を実行します。 #
プロンプトが表示されます。
手順: rootとして実行できるエミュレータイメージをインストールして使用するには:
システムイメージを選択します。次のいずれかを選択してください。
Intel x86 Atomシステムイメージ
Intel x86 Atom_64システムイメージ
Google APIs Intel x86 Atomシステムイメージ
Google APIs Intel x86 Atom_64システムイメージ。
これらは、2列目にPlaystoreアイコンがないデバイスです。 (「Google Play ...システムイメージ」は選択しないでください。これらはrootとして実行できないものです。)
Rootアクセスが必要な場合、間違ったエミュレーターイメージを使用しています。エラーメッセージに、ルートはproductionビルドでは許可されていないため、代わりにserdebugビルドを使用します。