ไม่สามารถเข้าถึง adb ใน OS X ผ่านทางเทอร์มินัล“ ไม่พบคำสั่ง”


227

ฉันติดตั้ง Android SDK และ Eclipse บนระบบ Mac ของฉันแล้ว ฉันสามารถโปรแกรมโดยใช้ Eclipse และสร้างแอปพลิเคชันตัวอย่างน้อย แต่ฉันยังคงไม่สามารถเข้าถึงadbผ่านหน้าต่างเทอร์มินัล ฉันได้ลองคำสั่งต่อไปนี้ใน 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

ฉันยังได้เพิ่มlsเอาต์พุตเพื่อให้คุณทราบว่าฉันเป็นใคร

คำตอบ:


527

ปัญหาคือ: ไม่ได้อยู่ในของคุณadb PATHนี่คือตำแหน่งที่เชลล์ค้นหาไฟล์เรียกทำงาน คุณสามารถตรวจสอบปัจจุบันของคุณด้วยPATHecho $PATH

Bash จะพยายามค้นหาเลขฐานสองที่เรียกว่าadbในเส้นทางของคุณก่อนไม่ใช่ในไดเรกทอรีปัจจุบัน ดังนั้นหากคุณอยู่ในplatform-toolsไดเรกทอรีเพียงโทร

./adb --help

จุดคือไดเรกทอรีปัจจุบันของคุณและสิ่งนี้บอกให้ Bash ใช้adbจากตรงนั้น

แต่ที่จริงแล้วคุณควรเพิ่มลงplatform-toolsในPATHเครื่องมือรวมถึงเครื่องมืออื่น ๆ ที่ Android SDK มาด้วย นี่คือวิธีที่คุณทำ:

  1. ค้นหาตำแหน่งที่คุณติดตั้ง Android SDK นี่อาจเป็น (ซึ่ง$HOMEเป็นโฮมไดเร็กตอรี่ของผู้ใช้ของคุณ) อย่างใดอย่างหนึ่งต่อไปนี้ (หรือตรวจสอบผ่านConfigure> SDK Managerในหน้าจอเริ่มต้นของ Android Studio):

    • ลินุกซ์: $HOME/Android/Sdk
    • MacOS: $HOME/Library/Android/sdk
  2. ค้นหาโปรไฟล์ของเชลล์ที่จะแก้ไขโดยขึ้นอยู่กับไฟล์ที่ใช้ :

    • Linux: โดยทั่วไปแล้ว $HOME/.bashrc
    • macOS: โดยทั่วไปแล้ว $HOME/.bash_profile
    • ด้วย Zsh: $HOME/.zshrc
  3. เปิดโปรไฟล์เชลล์จากขั้นตอนที่สองและที่ด้านล่างของไฟล์ให้เพิ่มบรรทัดต่อไปนี้ ตรวจสอบให้แน่ใจว่าได้เปลี่ยนพา ธ ด้วยพา ธ ที่คุณติดตั้งplatform-toolsหากมันแตกต่าง:

    export ANDROID_HOME="$HOME/Android/Sdk"
    export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH"
  4. บันทึกไฟล์โปรไฟล์จากนั้นรีสตาร์ทเทอร์มินัลหรือเรียกใช้source ~/.bashrc(หรือสิ่งที่คุณเพิ่งแก้ไข)

โปรดทราบว่าANDROID_HOMEจำเป็นต้องมีการตั้งค่าสำหรับกรอบงานของบุคคลที่สามดังนั้นจึงไม่เป็นการเพิ่มความเสียหาย


8
พิมพ์ "source .bash_profile" หรือเปิดแท็บเทอร์มินัลใหม่หลังจากเพิ่มบรรทัดนั้นเพื่อเริ่มใช้งานในระดับกลาง
Mariments

3
หากต้องการแก้ไข~/.profileไฟล์ใน TextEdit เพียงป้อนopen ~/.profileใน Terminal
Eptin

ฉันเคยได้ยินมาว่า "หากคุณมีทั้งไฟล์. profile และ. bash_profile เฉพาะไฟล์หลังเท่านั้นที่ถูกเรียกใช้งาน" ฉันคิดว่าความต้องการเส้นทางไปแทรกลงแทนเพียง~/.bash_profile ~/.profile
Eptin

ท้ายที่สุดสิ่งที่ได้ผลสำหรับฉันคือไม่ได้อยู่/:$PATHที่ท้ายบรรทัด
Eptin

8
ในรุ่นล่าสุดของ Android Studio: "/ Users / <user> / Library / Android / sdk / platform-tools" ดังนั้นมันจะเป็นดังนี้: export PATH = "/ Users / myuser / Library / Android / sdk / platform-tools ": $ PATH
eb80

63

นอกจาก slhck นี่คือสิ่งที่ทำงานให้ฉัน (mac)

เพื่อตรวจสอบที่ตั้งของ sdk ของคุณ

  1. เปิดสตูดิโอ Android แล้วไปที่:

ไฟล์ -> โครงสร้างโครงการ -> ที่ตั้ง Sdk

  1. คัดลอกพา ธ

  2. สร้างที่ซ่อนอยู่.bash_profileในบ้านของคุณ

  3. (เปิดด้วยvimหรือopen -e) ด้วยสิ่งต่อไปนี้:

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

  1. จากนั้นใช้สิ่งนี้ในเครื่องของคุณ: . ~/.bash_profile

โพสต์เกี่ยวกับวิธีการค้นหาอุปกรณ์ adb


57

คำตอบที่รวดเร็ว

การวางคำสั่งนี้ในเทอร์มินัลจะช่วยแก้ปัญหาในกรณีส่วนใหญ่:

** สำหรับเซสชันเทอร์มินัลปัจจุบัน:

  • (ใน macOS) export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH
  • (ใน Windows) ฉันจะอัปเดตโดยเร็ว

** อย่างถาวร:

  • (ใน macOS)แก้ไขการ~/.bash_profileใช้vi ~/.bash_profileและเพิ่มบรรทัดนี้: export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH

อย่างไรก็ตามถ้าไม่อ่านต่อ


คำตอบโดยละเอียด

Android Debug Bridgeหรือadbสั้น ๆ มักจะอยู่ในเครื่องมือแพลตฟอร์มและมาพร้อมกับ Android SDKคุณเพียงแค่ต้องเพิ่มที่ตั้งลงในเส้นทางของระบบ ดังนั้นระบบจะรู้เกี่ยวกับมันและสามารถใช้งานได้ถ้าจำเป็น

ค้นหาที่ตั้งของ ADB

พา ธ ไปยังโฟลเดอร์นี้จะแตกต่างกันตามสถานการณ์การติดตั้ง แต่โดยทั่วไปจะเป็น:


  • หากคุณติดตั้งAndroid Studioแล้วพา ธ ไปที่ ADB จะเป็น: (โดยทั่วไป)
    • (ใน macOS) ~ / Library / Android / sdk / platform-tools
    • (ใน Windows) ฉันจะอัปเดตโดยเร็ว

  • หากคุณติดตั้งAndroid Studio ไว้ที่อื่นให้ระบุตำแหน่งของมันโดยไปที่:

    • (ใน macOS) Android Studio> การตั้งค่า> ลักษณะและพฤติกรรม> การตั้งค่าระบบ> Android SDKและให้ความสนใจกับกล่องที่ระบุว่า: ตำแหน่งAndroid SDK
    • (ใน Windows) ฉันจะอัปเดตโดยเร็ว

  • อย่างไรก็ตาม Android SDK สามารถติดตั้งได้โดยไม่มีสตูดิโอ Android ในกรณีนี้เส้นทางของคุณอาจแตกต่างกันและขึ้นอยู่กับการติดตั้งของคุณ

เพิ่มไปยังเส้นทางของระบบ

เมื่อคุณกำหนดตำแหน่งของ ADB แล้วให้เพิ่มไปยังระบบทำตามไวยากรณ์นี้แล้วพิมพ์ลงในเทอร์มินัล:

  • (ใน macOS)

    ส่งออก PATH = "ของคุณ / เส้นทาง / ไปยัง / adb / ที่นี่": $ PATH

    ตัวอย่างเช่น: export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH


ทำงานอย่างถาวร เนื้อเรื่องย่อ: 1. vi ~ / .bash_profile 2. ส่งออก PATH = "~ / Library / Android / sdk / platform-tools": $ PATH 3. : x
Johnny Five

1
vi something elseใช้ตัวแก้ไขคอนโซลเพื่อเปิดไฟล์คุณยังสามารถใช้open ~/.bash_profile
cutiko

43

สำหรับzshผู้ใช้ เพิ่มalias adb='/Users/<yourUserName>/Library/Android/sdk/platform-tools/adb'ไปยัง.zshrcไฟล์

กว่ารันsource ~/.zshrcคำสั่ง


3
สิ่งนี้ใช้ได้สำหรับฉัน อย่าลืมที่จะsource ~/.zshrcให้การเปลี่ยนแปลงมีผล!
Yogesh Umesh Vaity

38

ฉันไม่รู้ว่าคุณติดตั้ง android SDK ได้อย่างไร แต่ใน Mac OS สิ่งที่ได้ผลจริง ๆ สำหรับฉันคือติดตั้งใหม่โดยใช้ brew ปัญหาทั้งหมดได้รับการแก้ไขติดต่อกัน

brew cask install android-sdk

หลังจากนั้น:

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

เหมือนมีเสน่ห์


2
สำหรับผู้ใช้ Mac ทั้งหมดนี้คือคำตอบด้านบนอย่างแน่นอนสำหรับปัญหาเช่นที่เป็นอยู่ในหัวข้อนี้ -> stackoverflow.com/questions/17901692/set-up-adb-on-mac-os-x
Stoycho Andreev

1
ทำงานเหมือนจับใจ!
Gandharva Bettadpur

21
ใช้brew cask install android-platform-toolsงานได้ดี
Gavin

2
ได้รับการอัปเดตเป็นbrew cask install android-sdk แหล่งที่มา : github.com/NativeScript/nativescript-cli/issues/2706
Jai Sharma

20

สำหรับฉันฉันพบปัญหานี้หลังจากเปลี่ยนจากทุบตีเป็น zsh เพื่อให้ฉันได้รับคอนโซลของฉันเพื่อดูน่าอัศจรรย์ทั้งหมด - ish กับHyperและชุดรูปแบบโก๋ ฉันพยายามเรียกใช้แอปพลิเคชั่นที่เป็นภาษาของฉันเองโดยใช้react-native run-androidและพบปัญหาของ op การเพิ่มสิ่งต่อไปนี้ลงใน~.zshrcไฟล์ของฉันสามารถแก้ไขปัญหาให้ฉันได้:

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


10

หากคุณใช้zshบน OS X คุณต้องแก้ไขไฟล์ zshrc

ใช้เป็นกลุ่มหรือโปรแกรมแก้ไขข้อความที่คุณชื่นชอบเพื่อเปิดไฟล์ zshrc:

vim ~/.zshrc

วางเส้นทางไปที่adbในไฟล์นี้:

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

nano ~ / .zshrc export PATH = "/ Users / {$ USER} / Library / Android / sdk / platform-tools": $ PATH
Guy West

1

หรือทางเลือกอื่นอาจจะเป็น

  1. ตรวจสอบให้แน่ใจว่าคุณติดตั้งสำหรับ android SDK แล้ว โดยปกติจะอยู่ภายใต้ / Users / your-user-name / Library / Android / sdk
  2. หากมี SDK อยู่ให้เรียกใช้คำสั่งนี้ ./platform-tools/adb ติดตั้ง-apk-location ของคุณ

  3. จากตรงนั้นคุณสามารถสร้างไฟล์ APK นั่นเป็นเพียงตัวอย่างเดียวที่จะตรวจสอบว่ามีคำสั่ง adb หรือไม่


ขอบคุณ มันทำงานได้ แต่ฉันต้องเพิ่มไดเรกทอรี sdk ในเส้นทางสำหรับขั้นตอนที่ 2: ./Library/Android/sdk/platform-tools/adb ติดตั้ง ~ / ดาวน์โหลด / apk-release.apk
นิซ

0

ด้วยเหตุผลบางอย่างเมื่อติดตั้งไฟล์เป็นจริงใน ไม่แน่ใจว่านี่เป็นข้อผิดพลาดกับการติดตั้งของฉันหรืออะไร แต่สิ่งนี้แก้ไขได้สำหรับฉันAndroid Studio 3.6.1adb$ANDROID_HOME/platform-tools/platform-tools



0

สำหรับ Mac OS Catalina หรือ Mojave

ป้อนคำสั่งเพื่อเปิดโปรแกรมแก้ไขนาโน

nano $HOME/.zshrc

ตั้งค่าตัวแปร PATH หมายถึงผนวกเส้นทางเพิ่มเติมตามที่แสดงที่นี่

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"

ตอนนี้กด Command + X เพื่อบันทึกไฟล์ในโปรแกรมแก้ไขให้กดใช่หรือไม่ใช่แล้วกดปุ่ม Enter


-9

มันทำงานได้ดี ..

brew install android-sdk

หลังจากนั้น:

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

3
คำตอบของฉันคล้ายกันเล็กน้อยคุณไม่คิดเหรอ?
eMarine

ฉันคิดไม่ออกเพราะคุณไม่เคยพูดถึง "Like a charm"
59
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.