ルート化されたAndroidデバイスをADBホストとして使用して、adbコマンド「adb devices」をSamsung S4に送信すると、デバイス不正エラーメッセージが表示されます。ただし、Samsung Galaxy Nexusにadbを試してみたところ、うまく機能しています。誰かが私のSamsung S4の問題を解決する方法をアドバイスできますか?
=========================================
# adb devices
List of devices attached
4d00f9169907301b unauthorized
=========================================
前もって感謝します。
編集:この問題はAndroid 4.2.2以降でのみ発生することがわかりました。次のリンクは、Googleがadbを使用するための新しいセキュリティ機能を実装したことを説明しています。
http://nelenkov.blogspot.com/2013/02/secure-usb-debugging-in-Android-422.html
誰かがこれを手伝ってくれれば感謝します。
クライアントの電話(adbホスト)から公開キーを取得します
猫/data/.Android/adbkey.pub
上記の公開キーをターゲットの電話の/data/misc/adb/adb_keys
の場所にコピーします。 (最初にstop adbd
でadbデーモンを停止する必要があるかもしれません)
猫/ data/misc/adb/adb_keys
cat
の両方の出力が一致することを確認します。
ターゲットstart adbd
でadbデーモンを再起動するか、単に再起動してください。
上記の手順でADB KEYSの読み取りまたは書き込みに問題がある場合は、 環境変数ADB_KEYS_PATH
を設定してみてください 一時パス(例:/data/local/tmp
)を使用します。 リンク先 詳細を参照してください
"On the Host, the user public/private key pair is automatically generated,
if it does not exist, when the adb daemon starts and is stored in
$HOME/.Android/adb_key(.pub) or in $Android_SDK_HOME on windows. If needed,
the ADB_KEYS_PATH env variable may be set to a :-separated (; under
Windows) list of private keys, e.g. company-wide or vendor keys.
On the device, vendors public keys are installed at build time in
/adb_keys. User-installed keys are stored in /data/misc/adb/adb_keys"
デバイスの[USBデバッグ]オプションをオンまたはオフにします。それでもうまくいかない場合は、数回USBを取り外して接続してください。
ある時点で、デバイスにコンピューターの認証を求めるメッセージボックスが表示されます。 [はい]をクリックすると、デバイスが承認されます。
割れた画面を持つ電話を持っているという同様の問題があり、adbにアクセスする必要がある場合:
開発者モードを有効にするのを忘れて、adbが実行されていない場合は、次の手順を実行します。
adb devices
と入力すると、リストにデバイスが表示されます。その場合、次を入力します。
adb Shell mount /system
abd Shell
echo "persist.service.adb.enable=1" >> default.prop
echo "persist.service.debuggable=1" >> default.prop
echo "persist.sys.usb.config=mtp,adb" >> default.prop
echo "persist.service.adb.enable=1" >> /system/build.prop
echo "persist.service.debuggable=1" >> /system/build.prop
echo "persist.sys.usb.config=mtp,adb" >> /system/build.prop
電話を再起動する場合は、Androidが「adbは動作していますが、この[OK]ボタンをタップしてください。PCを信頼できるようになります」と表示されます。そして明らかに、電話をタップできない場合は、回復モードのままにして次の操作を行います(adbシェルモードではない場合、最初にexit
と入力します)。
cd ~/.Android
adb Push adbkey.pub /data/misc/adb/adb_keys
ほら、今はすべてがつらいはずです!電話を再起動するだけで、電話の実行中にadbにアクセスできるはずです。
adbシェルの再起動
追伸OS XとMoto Xスタイルを使用していましたが、これはひびの入った画面です。
やってみました
adb kill-server
adb Shell
時々、adbがスタックして、最初にadbサーバーを強制終了してからコマンドを開始すると、許可ウィンドウがポップアップ表示されます。
また、携帯電話でadbクライアントのバージョンを確認してください。この機能は、私の知る限り、adb 1.0.31からサポートされています。
体験:ASUS ZENFONE
Asus Zenfonesのドライバーが見つからない場合は、このリンクに従ってください( http://donandroid.com/how-to-install-adb-interface-drivers-windows-7-xp-Vista-62 =)
私が試した
1)adb cmdでadbサーバーを強制終了して起動します。
2)USBデバッグのオンとオフの切り替えおよび...
これは私と働いたものです。
ステップ1:デバイスとの接続を削除してEclipseを閉じる
ステップ2:C:/Users/User_name/.Android/に移動します
ステップ3:adb_keyが見つかります
ステップ4:削除するだけです。
ステップ5再度接続すると、システムが再度確認を求めます。
ステップ6。プロンプトが表示されたら、RSAキーを記憶するようにデバイスに要求します。完了したと思います。
数日後に同じ問題に直面した場合は、USBデバッグを無効にして有効にしてください
コンピュータに最初に接続したときにポップアップが表示されるときに、Allow USB debugging
を許可する必要があります。
この手順を試してください:
ポップアップ時にデバイスでUSBデバッグを許可する必要があります。
.Android
からC:/users/<user name>/.Android
フォルダーを削除します。それは私のために問題を解決しました。
私にとって、エミュレーターでGoogle Play Servicesを有効にすることはできませんでした。 Google APIを使用するか、x86またはx64を使用できますが、Google Playストアは使用できません。
Nexus 5とTWRPがインストールされたのソリューションが1つ見つかりました。基本的にフォーマットは私が見つけた唯一の解決策であり、以前にリストされたすべての解決策を試しました: ADB Android Device Unauthorized
Googleにアプリのバックアップを作成してもらいます。携帯電話にある重要なファイルをすべて保存します
私がやったことは非常に危険でしたが、私の場合はうまくいったので、失敗した場合はすべての責任を拒否することに注意してください:
開発者向けオプションでUSBデバッグを有効にします(デバイスが許可されていなかったのに、まだ助けたのかどうかはわかりませんが...)
スマートフォンがコンピューターに接続され、ストレージにアクセスできることを確認してください
ネクサスのグーグルimgをダウンロードします: https://developers.google.com/Android/nexus/images ファイルを展開し、コンピューター上の新しいフォルダーに配置して、名前を付けます工場(任意の名前でもかまいません)。
すべてのデータを消去...コンピュータからアクセスしたAndroidに0個のファイルがあります。
次に、BOOTLOADERモードで再起動します...「OSがインストールされていません。再起動してもよろしいですか?」というメッセージが表示されます。
次に、「factory」フォルダー内の.batファイルを実行(ダブルクリック)します。
OSのコマンドライン詳細インストールが表示されます。もちろん、この段階ではケーブルを外さないでください...
電話の初期化には約5分かかります。
理由は不明ですが、私は~/.Android/adbkey
しか持っていませんでしたが、~/.Android/adbkey.pub
は持っていませんでした。
adb
は公開キーをデバイスにプッシュできなかったため、デバイスが認証ダイアログを表示できなかったと思います。
Adbサーバーを強制終了し、adbkey
ファイルを削除し、adb
を再度開始すると、電話に認証ダイアログが表示されました。
「常にこの電話で許可する」という電話のデバッガーのボックスをチェックする必要がありました。次に、adbデバイスを実行し、adbコマンドを入力して追加をクリアしました。うまくいきました。その前に、それは午後と他のコマンドを認識しませんでした