最近アプリ開発にドハマりしてます。
なぜかアプリ開発って熱中しちゃいますよね。(Web開発と比べて)
ただアプリ開発をしばらくやめていたせいか、開発も四苦八苦です。
今回遭遇したのは "Unable to locate adb" という謎エラー
解決方法が分かったので、後学のために解決策をメモしたいと思います。
このページの目次
とあるアプリを Run しようとしたら出てきた
このエラーに遭遇したのは、
ちょっとした思い付きで作ってたアプリを Run したとき
なんの前触れもなく、突然こんなエラー が出ちゃいました。
1 2 3 4 5 6 7 |
java.lang.IllegalArgumentException: Unable to locate adb at com.android.tools.idea.run.editor.DeployTargetPickerDialog.<init>(DeployTargetPickerDialog.java:144) at com.android.tools.idea.run.editor.ShowChooserTargetProvider.showPrompt(ShowChooserTargetProvider.java:113) at com.android.tools.idea.run.AndroidRunConfigurationBase.getDeployTarget(AndroidRunConfigurationBase.java:600) at com.android.tools.idea.run.AndroidRunConfigurationBase.doGetState(AndroidRunConfigurationBase.java:281) at com.android.tools.idea.run.AndroidRunConfigurationBase.getState(AndroidRunConfigurationBase.java:241) (以下長くなるので略、、、) |
Unable to locate adb ...?
どうやら adb.exe が見つからないせいで、アプリが実行できなくなってる模様
アプリが実行できないのはものすごく困ります。デバックすらできないから
そこでこの "Unable to locate adb" の解決策を試してみました。
Unable to locate adb エラーの解決手順
どこで調べたか忘れたんですが、分かりやすい直し方が書いてありました。
その手順通りにやったら無事エラーが解決できます。その具体的な手順は次の通り
1.まず platform-tools フォルダを開く
手順1つめは platform-tools フォルダを開くこと
その場所はユーザーが [USER] なら次の通り(あとWindows環境)
1 |
C:\Users\[USER]\AppData\Local\Android\Sdk\platform-tools |
ここに adb を動かすのに必要なファイルが格納されてます。
ただ "Unable to locate adb" が起きた場合、このフォルダ内の次のファイルが消えてました。
- adb.exe
- ADBWinApi.dll
- ADBWinUsbApi
なので adb 関係のexeファイルや dllファイル を配置しなします。
2. adb.exeとその他DLLファイルを再配置
そのダウンロードは次URLから
ここではWindowsでのやり方で説明します(他OSでも似たような感じ)
まずページにアクセスして、"Download SDK Platform-Tools for Windows" のリンクをクリック
▼ このリンクから必要なのがDLできる
もし Mac や Linuxe でアプリ開発してるなら、そっちの方をダウンロードしてください。
そうすると "platform-tools_r29.0.2-windows.zip" みたいなzipがダウンロードされます。
解凍し、次の3つのファイルを platform-tools に貼り付けすればおK
- adb.exe
- ADBWinApi.dll
- ADBWinUsbApi
本当にそのまま貼り付ければいいだけ
ただし貼り付けるとき、こういうダイアログがでることもあります。
▲ こういうダイアログ
ウィルスソフトが邪魔していることが多いので、
いったん Avast とかを無効化してから貼り付け すると上手くいくはず
無事アプリがビルドできるようになった(安)
そしてAndroid Studi を再起動すると・・・無事ビルドできるようになりました。
"Unable to locate adb" とか見たときは驚いたけど、
単純に adb とかその他のファイルがなかっただけだったみたいです。
少しビビったけど、解決してよかった。ではまた($・・)/~~~