Không thể truy cập adb trong OS X thông qua Terminal, không tìm thấy lệnh


227

Tôi đã cài đặt Android SDK và Eclipse trên hệ thống Mac của mình. Tôi có thể lập trình bằng Eclipse và đã tạo ra một vài ứng dụng mẫu. Nhưng tôi vẫn không thể truy cập adbthông qua cửa sổ terminal. Tôi đã thử lệnh sau trong 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

Tôi cũng đã thêm lsđầu ra để bạn biết tôi đang ở cửa sổ nào.

Câu trả lời:


527

Vấn đề là: adbkhông phải trong của bạn PATH. Đây là nơi shell tìm kiếm thực thi. Bạn có thể kiểm tra hiện tại của bạn PATHvới echo $PATH.

Trước tiên Bash sẽ cố gắng tìm kiếm một nhị phân được gọi adbtrong Đường dẫn của bạn chứ không phải trong thư mục hiện tại. Do đó, nếu bạn đang ở trong platform-toolsthư mục, chỉ cần gọi

./adb --help

Dấu chấm là thư mục hiện tại của bạn và điều này bảo Bash sử dụng adbtừ đó.

Nhưng thực tế, bạn nên thêm platform-toolsvàoPATH , cũng như một số công cụ khác mà SDK Android đi kèm. Đây là cách bạn làm điều đó:

  1. Tìm nơi bạn đã cài đặt SDK Android. Đây có thể là (nơi $HOMEthư mục chính của người dùng của bạn) là một trong những điều sau đây (hoặc xác minh qua Cấu hình> Trình quản lý SDK trong màn hình khởi động Android Studio):

    • Linux: $HOME/Android/Sdk
    • hệ điều hành Mac: $HOME/Library/Android/sdk
  2. Tìm hiểu cấu hình shell nào để chỉnh sửa, tùy thuộc vào tệp nào được sử dụng :

    • Linux: thông thường $HOME/.bashrc
    • macOS: thông thường $HOME/.bash_profile
    • Với Zsh: $HOME/.zshrc
  3. Mở hồ sơ shell từ bước hai và ở dưới cùng của tệp, thêm các dòng sau. Đảm bảo thay thế đường dẫn bằng đường dẫn bạn đã cài đặt platform-toolsnếu nó khác:

    export ANDROID_HOME="$HOME/Android/Sdk"
    export PATH="$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH"
    
  4. Lưu tệp hồ sơ, sau đó, khởi động lại thiết bị đầu cuối hoặc chạy source ~/.bashrc(hoặc bất cứ điều gì bạn vừa sửa đổi).

Lưu ý rằng cài đặt ANDROID_HOMElà bắt buộc đối với một số khung công tác của bên thứ ba, vì vậy sẽ không hại khi thêm nó.


8
nhập "nguồn .bash_profile" hoặc mở tab thiết bị đầu cuối mới sau khi thêm dòng đó để bắt đầu sử dụng nó ngay lập tức
Maragues

3
Để chỉnh sửa ~/.profiletệp trong TextEdit, chỉ cần nhập open ~/.profilevào Terminal.
Eptin

Tôi đã nghe nói rằng "nếu bạn có cả hai tệp .profile và .bash_profile, thì chỉ những tệp sau mới được thực thi." Tôi sẽ tưởng tượng rằng đường dẫn cần phải được chèn vào ~/.bash_profilethay vì chỉ ~/.profile.
Eptin

Cuối cùng, những gì làm việc cho tôi là KHÔNG có /:$PATHở cuối dòng.
Eptin

8
Trong các bản phát hành Android Studio gần đây: "/ Users / <user> / Library / Android / sdk / platform-tools", vì vậy nó sẽ là như sau: export PATH = "/ Users / myuser / Library / Android / sdk / platform-tools ": $ PATH
eb80

63

Ngoài slhck, đây là những gì làm việc cho tôi (mac).

Để kiểm tra vị trí của sdk của bạn.

  1. Mở studio Android và đi đến:

Tệp -> Cấu trúc dự án -> Vị trí Sdk

  1. Sao chép đường dẫn.

  2. Tạo sự ẩn .bash_profiletrong nhà của bạn.

  3. (mở nó bằng vim, hoặc open -e) với các mục sau:

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

  1. Sau đó, chỉ cần sử dụng điều này trong thiết bị đầu cuối của bạn: . ~/.bash_profile

SO đăng bài về cách tìm thiết bị adb


57

Câu trả lời nhanh

Dán lệnh này trong thiết bị đầu cuối giải quyết vấn đề trong hầu hết các trường hợp:

** Đối với Phiên thiết bị đầu cuối hiện tại:

  • (trong macOS) xuất PATH = "~ / Thư viện / Android / sdk / công cụ nền tảng": $ PATH
  • (trong Windows) tôi sẽ cập nhật càng sớm càng tốt

** Vĩnh viễn:

  • (trong macOS) chỉnh sửa việc ~/.bash_profilesử dụng vi ~/.bash_profilevà thêm dòng này vào nó: export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH

Tuy nhiên, nếu không, hãy tiếp tục đọc.


Trả lời chi tiết

Cầu gỡ lỗi Android , hay viết tắt là adb , thường được đặt trong Công cụ nền tảng và đi kèm với SDK Android , Bạn chỉ cần thêm vị trí của nó vào đường dẫn hệ thống. Vì vậy, hệ thống biết về nó, và có thể sử dụng nó nếu cần thiết.

Tìm vị trí của ADB

Đường dẫn đến thư mục này thay đổi theo kịch bản cài đặt, nhưng các đường dẫn phổ biến là:


  • Nếu bạn đã cài đặt Android Studio , đường dẫn đến ADB sẽ là: (Phổ biến nhất)
    • (trong macOS) ~ / Library / Android / sdk / platform-tools
    • (trong Windows) tôi sẽ cập nhật càng sớm càng tốt

  • Nếu bạn đã cài đặt Android Studio ở một nơi khác, hãy xác định vị trí của nó bằng cách đi tới:

    • (trong macOS) Android Studio> Tùy chọn> Giao diện và hành vi> Cài đặt hệ thống> SDK Android và chú ý đến hộp có nội dung: Vị trí SDK Android
    • (trong Windows) tôi sẽ cập nhật càng sớm càng tốt

  • Tuy nhiên, SDK Android có thể được cài đặt mà không có Android studio, trong trường hợp này đường dẫn của bạn có thể khác và phụ thuộc vào cài đặt của bạn.

Thêm nó vào đường dẫn hệ thống

Khi bạn đã xác định vị trí của ADB, hãy thêm nó vào hệ thống, thực hiện theo cú pháp này và nhập nó vào thiết bị đầu cuối:

  • (trong macOS)

    export PATH = "your / path / to / adb / here": $ PATH

    ví dụ: export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH


"Vĩnh viễn" làm việc. Câu chuyện dài viết tắt cho nó: 1. vi ~ / .bash_profile 2. export PATH = "~ / Library / Android / sdk / platform-tools": $ PATH 3 .: x
Johnny Five

1
vi something elsesử dụng trình chỉnh sửa bảng điều khiển để mở tệp, bạn cũng có thể sử dụngopen ~/.bash_profile
cutiko

43

Đối với zshngười dùng. Thêm alias adb='/Users/<yourUserName>/Library/Android/sdk/platform-tools/adb'vào .zshrctập tin.

Hơn source ~/.zshrclệnh chạy


3
Điều này làm việc cho tôi. Đừng quên để source ~/.zshrcnhững thay đổi có hiệu lực!
Yogesh Umesh Vaity

38

Tôi không biết bạn đã cài đặt SDK Android như thế nào. Nhưng trong Mac OS, điều thực sự hiệu quả với tôi là cài đặt lại nó bằng brew. Tất cả các vấn đề được giải quyết liên tiếp.

brew cask install android-sdk

Sau này:

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

Như một bùa mê


2
Đối với tất cả người dùng máy Mac, đây là câu trả lời tuyệt đối cho vấn đề, giống như trong chủ đề này -> stackoverflow.com/questions/17901692/set-up-adb-on-mac-os-x
Stoycho Andreev

1
Làm việc như người ở!
Gandharva Bettadpur

21
Sử dụng cũng brew cask install android-platform-toolshoạt động
Gavin

2
Nó đã được cập nhật thành brew cask install android-sdk nguồn : github.com/NativeScript/nativecript-cli/issues/2706
Jai Sharma

20

Đối với tôi, tôi chạy vào vấn đề này sau khi chuyển qua từ bash để zsh vì vậy tôi có thể nhận được giao diện điều khiển của tôi để tìm kiếm tất cả tuyệt vời tuyệt vời-ish với Hypersnazzy chủ đề. Tôi đã cố gắng chạy ứng dụng gốc phản ứng của mình bằng cách sử dụng react-native run-androidvà chạy vào vấn đề của op. Thêm phần sau vào ~.zshrctập tin của tôi đã giải quyết vấn đề cho tôi:

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

17
  1. Đơn giản chỉ cần cài đặt adb với brew

    brew cask install android-platform-tools

  2. Kiểm tra nếu adb được cài đặt

    adb devices


10

Nếu bạn đang sử dụng zshtrên OS X, bạn phải chỉnh sửa tệp zshrc.

Sử dụng vim hoặc trình soạn thảo văn bản yêu thích của bạn để mở tệp zshrc:

vim ~/.zshrc

Dán đường dẫn đến adbtrong tệp này:

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

nano ~ / .zshrc xuất PATH = "/ Users / {$ USER} / Thư viện / Android / sdk / công cụ nền tảng": $ PATH
Guy West

1

Hoặc giải pháp thay thế có thể là

  1. Hãy chắc chắn rằng bạn đã cài đặt cho SDK Android. Thông thường nó nằm dưới / Users / your-user-name / Library / Android / sdk
  2. Nếu SDK ở đó thì chạy lệnh này. ./pl platform-tools / adb cài đặt vị trí apk của bạn

  3. Từ đó bạn có thể tạo tệp APK Đó là mẫu duy nhất để kiểm tra xem lệnh adb có ở đó không


Cảm ơn. Nó làm việc nhưng tôi đã có thêm thư mục sdk trong đường dẫn cho bước 2: ./Library/Android/sdk/platform-tools/adb cài đặt ~ / Downloads / apk-release.apk
Deniz

0

Đối với một số lý do khi cài đặt Android Studio 3.6.1các adbtập tin đã thực sự trong $ANDROID_HOME/platform-tools/platform-tools. không chắc đây có phải là lỗi với cài đặt của tôi hay không nhưng điều này đã sửa nó cho tôi.


0

Đối với Mac, Android Studio 3.6.1, tôi đã thêm phần này vào .bash_profile

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


0

Dành cho Mac OS Catalina hoặc Mojave

Nhập lệnh để mở trình soạn thảo nano

nano $HOME/.zshrc

Đặt biến PATH, có nghĩa là nối thêm đường dẫn như hiển thị ở đây

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"

Bây giờ nhấn Command + X để lưu tệp trong trình chỉnh sửa, Nhập Có hoặc Không và nhấn phím Enter.


-9

Nó hoạt động tốt ..

brew install android-sdk

Sau này:

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

3
Hơi giống câu trả lời của tôi, bạn không nghĩ sao?
eMarine

Tôi không thể hiểu điều đó bởi vì bạn chưa bao giờ đề cập đến "Giống như một bùa mê"
tuyệt vời vào
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.