Zugriff auf adb in OS X über Terminal nicht möglich, "Befehl nicht gefunden"


227

Ich habe Android SDK und Eclipse auf meinem Mac-System installiert. Ich kann mit Eclipse programmieren und habe nur wenige Beispielanwendungen erstellt. Ich kann aber immer noch nicht adbüber das Terminalfenster zugreifen . Ich habe versucht, folgenden Befehl im Terminal:

$ 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

Ich habe auch die lsAusgabe hinzugefügt, damit Sie wissen, in welchem ​​Fenster ich bin.

Antworten:


527

Das Problem ist: adbist nicht in Ihrem PATH. Hier sucht die Shell nach ausführbaren Dateien. Sie können Ihre aktuelle PATHmit überprüfen echo $PATH.

Bash wird zuerst versuchen, nach einer Binärdatei zu suchen, die adbin Ihrem Pfad und nicht im aktuellen Verzeichnis aufgerufen wird . Wenn Sie sich derzeit im platform-toolsVerzeichnis befinden, rufen Sie einfach an

./adb --help

Der Punkt ist Ihr aktuelles Verzeichnis, und dies weist Bash an, es adbvon dort aus zu verwenden.

Aber eigentlich sollten Sie platform-toolsIhrePATH und einige andere Tools, mit denen das Android SDK geliefert wird , ergänzen . Das ist wie man es macht:

  1. Finden Sie heraus, wo Sie das Android SDK installiert haben. Dies kann $HOMEeines der folgenden sein (wo sich das Ausgangsverzeichnis Ihres Benutzers befindet) (oder über Konfigurieren> SDK-Manager im Startbildschirm von Android Studio überprüfen ):

    • Linux: $HOME/Android/Sdk
    • Mac OS: $HOME/Library/Android/sdk
  2. Finden Sie heraus, welches Shell-Profil bearbeitet werden soll, je nachdem, welche Datei verwendet wird :

    • Linux: normalerweise $HOME/.bashrc
    • macOS: normalerweise $HOME/.bash_profile
    • Mit Zsh: $HOME/.zshrc
  3. Öffnen Sie das Shell-Profil ab Schritt 2 und fügen Sie am Ende der Datei die folgenden Zeilen hinzu. Stellen Sie sicher, dass Sie den Pfad durch den Pfad ersetzen, in dem Sie ihn installiert haben, platform-toolswenn er sich unterscheidet:

    export ANDROID_HOME="$HOME/Android/Sdk"
    export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH"
    
  4. Speichern Sie die Profildatei, starten Sie das Terminal neu oder führen Sie es aus source ~/.bashrc(oder was auch immer Sie gerade geändert haben).

Beachten Sie, dass die Einstellung ANDROID_HOMEfür einige Frameworks von Drittanbietern erforderlich ist, sodass das Hinzufügen nicht schadet.


8
Geben Sie "source .bash_profile" ein oder öffnen Sie eine neue Terminal-Registerkarte, nachdem Sie diese Zeile hinzugefügt haben, um sie sofort zu verwenden
Maragues

3
Um die ~/.profileDatei in TextEdit zu bearbeiten , geben Sie einfach open ~/.profilein Terminal ein.
Eptin

Ich habe gehört, dass "wenn Sie sowohl .profile- als auch .bash_profile-Dateien haben, wird nur letztere ausgeführt." Ich würde mir vorstellen, dass der Pfad eingefügt werden muss, ~/.bash_profileanstatt nur ~/.profile.
Eptin

Schließlich funktionierte es für mich NICHT, das /:$PATHam Ende der Leitung zu haben.
Eptin

8
In neueren Android Studio-Versionen: "/ Users / <Benutzer> / Library / Android / sdk / platform-tools" lautet dies wie folgt: export PATH = "/ Users / myuser / Library / Android / sdk / platform-tools ": $ PATH
eb80

63

Zusätzlich zu slhck hat dies bei mir (mac) funktioniert.

Um zu überprüfen, wo sich Ihr SDK befindet.

  1. Öffnen Sie das Android Studio und gehen Sie zu:

Datei -> Projektstruktur -> SDK-Speicherort

  1. Kopieren Sie den Pfad.

  2. Erstellen Sie das .bash_profilein Ihrem Haus versteckte .

  3. (öffne es mit vimoder open -e) mit folgendem:

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

  1. Dann verwenden Sie dies einfach in Ihrem Terminal: . ~/.bash_profile

Schreiben Sie also, wie Sie ADB-Geräte finden


57

Schnelle Antwort

Das Einfügen dieses Befehls in das Terminal löst das Problem in den meisten Fällen:

** Für aktuelle Terminalsitzung:

  • (unter macOS) export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH
  • (in Windows) Ich werde so schnell wie möglich aktualisieren

** Dauerhaft:

  • (unter macOS) Bearbeiten Sie die ~/.bash_profileVerwendung vi ~/.bash_profileund fügen Sie diese Zeile hinzu: export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH

Wenn nicht, lesen Sie weiter.


Detaillierte Antwort

Android Debug Bridge , kurz adb , befindet sich normalerweise in Platform Tools und wird mit dem Android SDK geliefert. Sie müssen lediglich den Speicherort zum Systempfad hinzufügen. Das System weiß also Bescheid und kann es bei Bedarf verwenden.

Finden Sie den Standort von ADB

Der Pfad zu diesem Ordner variiert je nach Installationsszenario. Die häufigsten sind jedoch:


  • Wenn Sie Android Studio installiert haben, lautet der Pfad zu ADB: (Am häufigsten)
    • (unter macOS) ~ / Library / Android / sdk / platform-tools
    • (in Windows) Ich werde so schnell wie möglich aktualisieren

  • Wenn Sie Android Studio an einem anderen Ort installiert haben , ermitteln Sie den Speicherort unter:

    • (unter macOS) Android Studio> Einstellungen> Aussehen und Verhalten> Systemeinstellungen> Android SDK und beachten Sie das Feld mit der Aufschrift: Android SDK-Speicherort
    • (in Windows) Ich werde so schnell wie möglich aktualisieren

  • Das Android SDK kann jedoch auch ohne Android Studio installiert werden. In diesem Fall kann Ihr Pfad unterschiedlich sein und hängt von Ihrer Installation ab.

Fügen Sie es dem Systempfad hinzu

Wenn Sie den Standort von ADB ermittelt haben, fügen Sie ihn dem System hinzu, befolgen Sie diese Syntax und geben Sie ihn in terminal ein:

  • (in macOS)

    export PATH = "Ihr / Pfad / nach / adb / hier": $ PATH

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


"Permanent" hat funktioniert. Lange Rede, kurzer Sinn: 1. vi ~ / .bash_profile 2. export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH 3 .: x
Johnny Five

1
vi something elseVerwenden Sie den Konsoleneditor zum Öffnen der Datei, Sie können auch verwendenopen ~/.bash_profile
cutiko

43

Für zshBenutzer. alias adb='/Users/<yourUserName>/Library/Android/sdk/platform-tools/adb'Zur .zshrcDatei hinzufügen .

Als source ~/.zshrcBefehl ausführen


3
Das hat bei mir funktioniert. Vergessen Sie nicht, source ~/.zshrcdass die Änderungen wirksam werden!
Yogesh Umesh Vaity

38

Ich weiß nicht, wie Sie das Android SDK installiert haben. Aber unter Mac OS hat es für mich wirklich funktioniert, es mit Brew neu zu installieren. Alle Probleme hintereinander gelöst.

brew cask install android-sdk

Später:

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

Wie ein Zauber


2
Für alle Mac-Benutzer ist dies die absolut beste Antwort für das Problem, wie es in diesem Thread steht -> stackoverflow.com/questions/17901692/set-up-adb-on-mac-os-x
Stoycho Andreev

1
Lief wie am Schnürchen!
Gandharva Bettadpur

21
Verwendung brew cask install android-platform-toolsfunktioniert auch
Gavin

2
Es wurde auf brew cask install android-sdk Quelle aktualisiert : github.com/NativeScript/nativescript-cli/issues/2706
Jai Sharma

20

Für mich stieß ich auf dieses Problem, nachdem ich von Bash zu Zsh gewechselt war, damit meine Konsole mit Hyper und dem pfiffigen Thema fantastisch aussehen konnte . Ich habe versucht, meine reaktionsnative Anwendung mit react-native run-androiddem Problem der Operation auszuführen und darauf zu stoßen. Das Hinzufügen von Folgendem zu meiner ~.zshrcDatei löste das Problem für mich:

export ANDROID_HOME=~/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools

17
  1. Installieren Sie einfach adb mit Brew

    brew cask install android-platform-tools

  2. Überprüfen Sie, ob adb installiert ist

    adb devices


10

Wenn Sie zshein OS X verwenden, müssen Sie die zshrc-Datei bearbeiten.

Verwenden Sie vim oder Ihren bevorzugten Texteditor, um die zshrc-Datei zu öffnen:

vim ~/.zshrc

Fügen Sie den Pfad adbin diese Datei ein:

export PATH="/Users/{$USER}/Library/Android/sdk/platform-tools":$PATH

nano ~ / .zshrc export PATH = "/ Benutzer / {$ USER} / Bibliothek / Android / sdk / Plattform-Tools": $ PATH
Guy West

1

Oder die alternative Lösung könnte sein

  1. Stellen Sie sicher, dass Sie bereits für Android SDK installieren. Normalerweise befindet es sich unter / Users / your-user-name / Library / Android / sdk
  2. Wenn das SDK vorhanden ist, führen Sie diesen Befehl aus. ./platform-tools/adb installiere deinen-apk-Speicherort

  3. Von dort aus können Sie die APK-Datei generieren. Dies ist das einzige Beispiel, mit dem überprüft werden kann, ob der Befehl adb vorhanden ist


Vielen Dank. Es hat funktioniert, aber ich musste das SDK-Verzeichnis im Pfad für den zweiten Schritt hinzufügen: ./Library/Android/sdk/platform-tools/adb install ~ / Downloads / apk-release.apk
Deniz

0

Aus irgendeinem Grund befand sich Android Studio 3.6.1die adbDatei bei der Installation tatsächlich in $ANDROID_HOME/platform-tools/platform-tools. Ich bin mir nicht sicher, ob dies ein Fehler bei meiner Installation ist oder was, aber dies hat ihn für mich behoben.


0

Für Mac, Android Studio 3.6.1 habe ich dies zu .bash_profile hinzugefügt

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


0

Für Mac OS Catalina oder Mojave

Geben Sie den Befehl ein, um den Nano-Editor zu öffnen

nano $HOME/.zshrc

Die Variable PATH festlegen bedeutet, dass mehr Pfad wie hier gezeigt angehängt wird

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"

Drücken Sie nun Befehlstaste + X, um die Datei im Editor zu speichern. Geben Sie Ja oder Nein ein und drücken Sie die Eingabetaste.


-9

Es funktioniert gut ..

brew install android-sdk

Später:

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

3
Etwas ähnlich bei meiner Antwort, findest du nicht?
eMarine

Ich konnte es nicht herausfinden, weil Sie nie "Like a charm" erwähnt haben
quemeful
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.