Nie można uzyskać dostępu do adb w OS X przez Terminal, „nie znaleziono polecenia”

227

Zainstalowałem Android SDK i Eclipse na moim systemie Mac. Jestem w stanie programować za pomocą Eclipse i stworzyłem kilka przykładowych aplikacji. Ale nadal nie mogę uzyskać dostępu adbprzez okno terminala. Próbowałem następujące polecenie w terminalu:

$ pwd
/Users/espireinfolabs/Desktop/soft/android-sdk-mac_x86/platform-tools

$ ls
NOTICE.txt  dexdump     llvm-rs-cc-2
aapt        dx          llvm-rs-cc.txt
adb         lib         source.properties
aidl        llvm-rs-cc

$ adb --help
-bash: adb: command not found

Dodałem również dane lswyjściowe, abyś wiedział, w którym oknie jestem.

pankaj
źródło

Odpowiedzi:

527

Problem polega na tym: adbnie ma go PATH. W tym miejscu powłoka szuka plików wykonywalnych. Możesz sprawdzić swój prąd za PATHpomocąecho $PATH .

Bash najpierw spróbuje poszukać pliku binarnego wywołanego adbna twojej ścieżce, a nie w bieżącym katalogu. Dlatego jeśli obecnie znajdujesz się w platform-toolsksiążce telefonicznej, po prostu zadzwoń

./adb --help

Kropka jest twoim bieżącym katalogiem, a to mówi Bashowi, by używał adbstamtąd.

Ale tak naprawdę powinieneś dodać platform-toolsdo swojegoPATH , a także niektóre inne narzędzia, które zawiera zestaw SDK systemu Android. Tak to się robi:

  1. Dowiedz się, gdzie zainstalowałeś zestaw Android SDK. Może to być (gdzie $HOMEjest katalog domowy użytkownika) jeden z poniższych (lub zweryfikuj za pomocą Konfiguruj> Menedżer SDK na ekranie startowym Android Studio):

    • Linux: $HOME/Android/Sdk
    • System operacyjny Mac: $HOME/Library/Android/sdk
  2. Dowiedz się, który profil powłoki edytować, w zależności od używanego pliku :

    • Linux: zazwyczaj $HOME/.bashrc
    • macOS: zazwyczaj $HOME/.bash_profile
    • Z Zsh: $HOME/.zshrc
  3. Otwórz profil powłoki od kroku drugiego, a na dole pliku dodaj następujące wiersze. Pamiętaj, aby zastąpić ścieżkę ścieżką, w której zainstalowano, platform-toolsjeśli różni się:

    export ANDROID_HOME="$HOME/Android/Sdk"
    export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH"
  4. Zapisz plik profilu, a następnie ponownie uruchom terminal lub uruchom source ~/.bashrc(lub cokolwiek, co właśnie zmodyfikowałeś).

Pamiętaj, że ustawienie ANDROID_HOMEjest wymagane w przypadku niektórych frameworków stron trzecich, więc dodanie go nie zaszkodzi.

slhck
źródło
8
wpisz „source .bash_profile” lub otwórz nową kartę terminala po dodaniu tej linii, aby od razu zacząć z niej korzystać
marca
3
Aby edytować ~/.profileplik w TextEdit, wystarczy wpisać open ~/.profilew Terminalu.
Eptin
Słyszałem, że „jeśli masz zarówno pliki .profile, jak i .bash_profile, tylko ten ostatni zostanie wykonany.” Wyobrażam sobie, że ścieżkę należy wstawić ~/.bash_profilezamiast po prostu ~/.profile.
Eptin
Wreszcie, to, co zadziałało dla mnie, to NIE mieć /:$PATHkońca linii.
Eptin
8
W nowszych wersjach Androida Studio: „/ Users / <użytkownik> / Library / Android / sdk / platform-tools”, więc będzie to: eksport PATH = "/ Users / myuser / Library / Android / sdk / platform-tools „: $ PATH
eb80
63

Oprócz slhck, to działało dla mnie (Mac).

Aby sprawdzić, gdzie znajduje się twój SDK.

  1. Otwórz studio Androida i przejdź do:

Plik -> Struktura projektu -> Lokalizacja Sdk

  1. Skopiuj ścieżkę.

  2. Utwórz ukryty .bash_profile w swoim domu.

  3. (otwórz go za pomocą vimlub open -e) w następujący sposób:

export PATH=/Users/<Your session name>/Library/Android/sdk/platform-tools:/Users/<Your session name>/Library/Android/sdk/tools:$PATH

  1. Następnie po prostu użyj tego w swoim terminalu: . ~/.bash_profile

SO post o tym, jak znaleźć urządzenia ADB

duch kemicofa
źródło
57

Szybka odpowiedź

Wklejenie tego polecenia w terminalu rozwiązuje problem w większości przypadków:

** W przypadku bieżącej sesji terminalowej:

  • (w macOS) export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH
  • (w Windows) zaktualizuję jak najszybciej

** Na stałe:

  • (w systemie macOS) edytuj za ~/.bash_profilepomocą vi ~/.bash_profilei dodaj do niego następującą linię: export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH

Jeśli nie, kontynuuj czytanie.


Szczegółowa odpowiedź

Most debugowania Androida , w skrócie adb , zwykle znajduje się w Narzędziach platformy i jest dostarczany z zestawem Android SDK , wystarczy dodać jego lokalizację do ścieżki systemowej. Tak więc system wie o tym i może go użyć w razie potrzeby.

Znajdź lokalizację ADB

Ścieżka do tego folderu różni się w zależności od scenariusza instalacji, ale typowymi są:


  • Jeśli masz zainstalowany Android Studio , ścieżka do ADB będzie: (Najczęściej)
    • (w macOS) ~ / Library / Android / sdk / platform-tools
    • (w Windows) zaktualizuję jak najszybciej

  • Jeśli zainstalowałeś Android Studio gdzie indziej, określ jego lokalizację, przechodząc do:

    • (w macOS) Android Studio> Preferencje> Wygląd i zachowanie> Ustawienia systemu> Zestaw SDK systemu Android i zwróć uwagę na pole z napisem: Lokalizacja zestawu SDK systemu Android
    • (w Windows) zaktualizuję jak najszybciej

  • Jednak zestaw SDK systemu Android można zainstalować bez studia Android, w takim przypadku ścieżka może być inna i zależy od instalacji.

Dodaj go do ścieżki systemowej

Po określeniu lokalizacji ADB dodaj ją do systemu, postępuj zgodnie z tą składnią i wpisz ją w terminalu:

  • (w macOS)

    export PATH = "twoja / ścieżka / do / adb / tutaj": $ PATH

    na przykład: export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH

Hamid Asghari
źródło
„Trwale” działało. Krótka historia: 1. vi ~ / .bash_profile 2. export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH 3.: x
Johnny Five
1
vi something elseużyj edytora konsoli do otwarcia pliku, możesz także użyćopen ~/.bash_profile
cutiko
43

Dla zshużytkowników. Dodaj alias adb='/Users/<yourUserName>/Library/Android/sdk/platform-tools/adb'do .zshrcpliku.

Niż source ~/.zshrcpolecenie uruchomienia

Tristan Richard
źródło
3
To zadziałało dla mnie. Nie zapomnij, aby source ~/.zshrczmiany zaczęły obowiązywać!
Yogesh Umesh Vaity
38

Nie wiem, jak zainstalowałeś Android SDK. Ale w Mac OS tak naprawdę działało dla mnie to przeinstalować go za pomocą brew. Wszystkie problemy rozwiązane z rzędu.

brew cask install android-sdk

Później:

android update sdk --no-ui --filter 'platform-tools'

Jak urok

eMarine
źródło
2
Dla wszystkich użytkowników komputerów Mac jest to absolutnie najlepsza odpowiedź na problem, podobnie jak w tym wątku -> stackoverflow.com/questions/17901692/set-up-adb-on-mac-os-x
Stoycho Andreev
1
Działa jak urok!
Gandharva Bettadpur
21
Użyj również brew cask install android-platform-toolsutworów
Gavin
2
Został zaktualizowany do brew cask install android-sdk źródła : github.com/NativeScript/nativescript-cli/issues/2706
Jai Sharma
20

Dla mnie natknąłem się na ten problem po przejściu z bash na zsh, dzięki czemu mogłem sprawić, że moja konsola będzie wyglądać niesamowicie fantastycznie z Hyper i sprytnym motywem. Próbowałem uruchomić moją natywną aplikację za pomocą react-native run-androidi napotkałem problem z op. Dodanie następujących elementów do mojego ~.zshrcpliku rozwiązało problem:

export ANDROID_HOME=~/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools
ragamufin
źródło
17
  1. Wystarczy zainstalować adb z naparem

    brew cask install android-platform-tools

  2. Sprawdź, czy adb jest zainstalowany

    adb devices

Freddy
źródło
10

Jeśli używasz zshna OS X, musisz edytować plik zshrc.

Użyj vima lub ulubionego edytora tekstu, aby otworzyć plik zshrc:

vim ~/.zshrc

Wklej ścieżkę do adbtego pliku:

export PATH="/Users/{$USER}/Library/Android/sdk/platform-tools":$PATH
div
źródło
nano ~ / .zshrc export PATH = "/ Users / {$ USER} / Library / Android / sdk / platform-tools": $ PATH
Guy West
1

Lub alternatywnym rozwiązaniem może być

  1. Upewnij się, że już zainstalowałeś dla Androida SDK. Zwykle znajduje się w / Users / your-user-name / Library / Android / sdk
  2. Jeśli jest tam SDK, uruchom to polecenie. ./platform-tools/adb zainstaluj swoją lokalizację-apk

  3. Stamtąd możesz wygenerować plik APK. To jedyna próbka, aby sprawdzić, czy dostępna jest komenda adb

Faris Rayhan
źródło
Dzięki. Działało, ale musiałem dodać katalog sdk w ścieżce dla drugiego kroku: ./Library/Android/sdk/platform-tools/adb install ~ / Downloads / apk-release.apk
Deniz
0

Z jakiegoś powodu po zainstalowaniu plik był faktycznie w . nie jestem pewien, czy to jest błąd w mojej instalacji, czy co, ale to naprawiło to dla mnie.Android Studio 3.6.1adb$ANDROID_HOME/platform-tools/platform-tools

KLTR
źródło
0

Na Macu, Android Studio 3.6.1, dodałem to do .bash_profile

export PATH="~/Library/Android/sdk/platform-tools/platform-tools":$PATH

Jordan Daniels
źródło
0

W systemie Mac OS Catalina lub Mojave

Wpisz polecenie, aby otworzyć edytor nano

nano $HOME/.zshrc

Ustaw zmienną PATH, oznacza dołącz więcej ścieżek, jak pokazano tutaj

FLUTTER_HOME="/Users/pankaj/Library/Android/flutter-sdk/flutter/bin"
DART_HOME="/Users/pankaj/Library/Android/flutter-sdk/flutter/bin/cache/dart-sdk/bin"
ANDROID_SDK_HOME="/Users/pankaj/Library/Android/sdk"
ANDROID_ADB_HOME="/Users/pankaj/Library/Android/sdk/platform-tools"

PATH="$PATH:$FLUTTER_HOME"
PATH="$PATH:$DART_HOME"
PATH="$PATH:$ANDROID_SDK_HOME"
PATH="$PATH:$ANDROID_ADB_HOME"

Teraz naciśnij Command + X, aby zapisać plik w edytorze, wpisz Tak lub Nie i naciśnij klawisz Enter.

Pankaj Kant Patel
źródło
-9

Działa dobrze ..

brew install android-sdk

Później:

android update sdk --no-ui --filter 'platform-tools'
Soumik Majumder
źródło
3
Nieco podobne przy mojej odpowiedzi, nie sądzisz?
eMarine
Nie mogłem tego
rozgryźć