Android Debug Bridge или ADB позволяет связываться с вашими устройствами через интерфейс командной строки. Его можно использовать для различных целей, поскольку он облегчает выполнение множества действий, включая установку и отладку приложений на вашем устройстве. При попытке запустить приложение через Android Studio вы можете столкнуться с сообщением об ошибке «Невозможно найти ADB», которое останавливает симуляцию. Как оказалось, сообщение об ошибке появляется, когда Android Studio не может найти файл ADB.exe, который находится в папке инструментов платформы.
Невозможно найти ADB
Это может произойти по нескольким причинам, в том числе из-за того, что антивирусное программное обеспечение удаляет файл adb.exe из-за ложной тревоги. Подобные проблемы довольно часто встречаются с антивирусным программным обеспечением, и поэтому при его использовании вам необходимо убедиться, что оно не вызывает ложное срабатывание для файлов, с которыми вы работаете. В дополнение к этому, настройки вашего проекта также могут вызывать появление этого сообщения об ошибке. Чтобы понять и лучше понять рассматриваемое сообщение об ошибке, давайте более подробно обсудим различные причины, по которым может возникнуть проблема. Однако помните, что причины включают, но не ограничиваются перечисленными ниже.
- Сторонний антивирус. Известно, что антивирусное программное обеспечение вызывает несколько проблем, когда они удаляют файл из вашей системы из-за ложного срабатывания. Известно, что антивирус Avast часто вызывает это с ADB, где он блокирует файл в ящике с вирусами. Если это применимо, вам придется восстановить файл оттуда, и все должно быть хорошо. Однако имейте в виду, что он может не только ограничиваться Avast, если вы используете другой сторонний антивирус, но он также может вызывать проблему, и поэтому вам следует просмотреть файлы, помещенные в карантин приложением.
- Настройки проекта — как оказалось, в некоторых случаях сообщение об ошибке может возникать из-за настроек вашего проекта. Android SDK по умолчанию не предоставляет проектам SDK по умолчанию. В таком сценарии вам нужно будет перейти в настройки проекта и предоставить проекту SDK, для которого по умолчанию установлено значение Нет SDK.
- Поврежденные инструменты платформы — в дополнение к вышеупомянутым причинам, если ваши инструменты платформы повреждены или повреждены, это также может привести к появлению сообщения об ошибке. Если этот сценарий применим, Защитник Windows или любое стороннее программное обеспечение, вероятно, поместит его в карантин, и в результате у вас больше нет файла adb.exe в папке инструментов платформы. В таком случае вам просто нужно будет переустановить инструменты платформы, чтобы решить проблему.
Теперь, когда мы рассмотрели возможные причины проблемы, давайте начнем с упоминания различных обходных путей, которые доступны вам для решения проблемы. Итак, без лишних слов, давайте сразу же погрузимся в это.
Как оказалось, первое, что вам следует сделать, когда вы столкнетесь с указанным сообщением об ошибке, — это проверить стороннее антивирусное программное обеспечение, установленное в вашей системе. Чаще всего антивирусное программное обеспечение может запускать ложные срабатывания и помещать в карантин файлы, которые совершенно не опасны. В этом случае adb.exe будет целевым файлом, который антивирусное программное обеспечение расценивает как опасную или потенциальную угрозу и в результате удаляет из вашей системы.
Если этот случай относится к вам, особенно если вы используете антивирус Avast, вам следует проверить вирусный ящик вашего антивирусного программного обеспечения, чтобы узнать, был ли файл помещен в карантин. Если это так, просто восстановите файл и попробуйте запустить приложение. Для этого следуйте приведенным ниже инструкциям:
- Прежде всего, щелкните правой кнопкой мыши значок антивируса на панели задач, а затем в появившемся меню выберите Virus Chest.Открытие сундука с вирусами
- Здесь проверьте, присутствует ли файл ABD.exe. Если это так, нажмите на три горизонтальные точки перед файлом.
- В появившемся раскрывающемся меню выберите параметр «Восстановить». Это удалит файл из хранилища вирусов, и вы сможете его использовать.Восстановление файла из вирусного хранилища
- Кроме того, вы также можете выбрать параметр «Восстановить и добавить исключение», чтобы убедиться, что оно больше не помещается в хранилище вирусов.
Изменить настройки проекта
Если ваше антивирусное программное обеспечение не является виновником или оно не относится к вам, сообщение об ошибке, вероятно, вызвано настройками вашего проекта. Это происходит, когда вашему проекту не назначен SDK, и в результате у него нет доступа к ADB, поэтому вы сталкиваетесь с соответствующим сообщением об ошибке. Чтобы решить эту проблему, вам нужно будет изменить настройки проекта по умолчанию, которые по умолчанию установлены на Нет SDK. Эти настройки можно найти в разделе «Структура проекта». Для этого следуйте приведенным ниже инструкциям:
- Прежде всего, убедитесь, что Android Studio открыта.
- Затем перейдите в Файл> Структура проекта. Кроме того, вы можете щелкнуть значок «Структура проекта», как показано на рисунке внизу.
- Когда откроется окно «Структура проекта», нажмите «Проект» в разделе «Настройки проекта».
- Затем перейдите к тому, что установлено для Project SDK. Если для него установлено значение Нет SDK, измените его на Android API XX Platform в раскрывающемся меню.Изменение SDK проекта по умолчанию
- Если в раскрывающемся меню нет параметров, вы можете нажать кнопку «Создать», выбрать Android SDK, а затем выбрать каталог, в котором находится Android SDK.
- Как только вы это сделаете, вы сможете выбрать Android API XX Platform в раскрывающемся меню.
- После этого нажмите кнопку ОК и попробуйте запустить приложение, чтобы проверить, сохраняется ли проблема.
Установите Android SDK из SDK Manager
Как оказалось, если в вашей системе отсутствует SDK соответствующей версии Android, это также вызовет появление сообщения об ошибке. Если этот случай применим, вы можете легко устранить сообщение об ошибке, установив соответствующий Android SDK из диспетчера SDK в Android Studio. Для этого следуйте приведенным ниже инструкциям:
- В окне Android Studio откройте окно «Настройки», выбрав «Файл»> «Настройки».
- Затем с левой стороны перейдите в Внешний вид и поведение> Системные настройки> Android SDK.SDK Manager
- После того, как вы войдете в диспетчер SDK, в разделе «Платформы SDK» установите платформу SDK для соответствующей версии Android.
- После того, как вы это сделаете, попробуйте запустить приложение, чтобы проверить, отображается ли сообщение об ошибке.
Переустановите инструменты платформы
Наконец, если вы все еще сталкиваетесь с указанным сообщением об ошибке после использования упомянутых выше методов, возможно, проблема вызвана поврежденными или поврежденными файлами инструментов платформы. Если этот сценарий применим к вам, вам придется переустановить инструменты платформы в вашей системе, чтобы избавиться от этого сообщения об ошибке. Это легко сделать через SDK Manager. Вы можете удалить инструменты платформы через SDK Manager, и после этого вы можете легко установить его снова с помощью нескольких щелчков мышью. Для этого следуйте приведенным ниже инструкциям:
- Прежде всего, закройте Android Studio, а затем откройте диспетчер задач, щелкнув правой кнопкой мыши панель задач. В появившемся меню выберите Диспетчер задач.Открытие диспетчера задач
- В окне диспетчера задач в разделе «Процессы» найдите процесс ADB.exe и завершите его.
- Как только вы это сделаете, снова откройте Android Studio.
- Теперь вам нужно открыть диспетчер SDK. Для этого щелкните значок коробки со стрелкой вниз, как показано на рисунке.Открытие SDK Manager
- После открытия диспетчера SDK перейдите на вкладку «Инструменты SDK».Переход на вкладку SDK Tools
- На вкладке SDK Tools прокрутите вниз, пока не увидите Android SDK Platform-Tools. Снимите флажок и нажмите ОК.Инструменты платформы Android в SDK Manager
- Это приведет к удалению инструментов платформы из вашей среды IDE. Подождите, пока он завершит удаление.
- После удаления и синхронизации Gradle снова откройте диспетчер SDK и снова переключитесь на вкладку «Инструменты SDK». Здесь снова найдите Android SDK Platform-Tools и отметьте его. Наконец, нажмите «ОК» и дождитесь его завершения, а затем синхронизируйте свой проект.
- После того, как все это будет сделано, попробуйте запустить свое приложение, чтобы увидеть, появляется ли сообщение об ошибке.
How to fix Could not find ‘adb.exe’?
I think my question is one of the most asked and answered question of the Android world. I read and tried them all.
- I checked and update my environment variables.
- I desinstalled and reinstalled ANdroid Studio
- I copied pasted adb in all possible folders:
C:UsersNinoAppDataLocalAndroidSdk
C:Program FilesAndroid
C:Program FilesAndroidtools
C:Program FilesAndroidplatform-tools
In fact I spent all the day by searching, reading and testing all the solution possible.
And nothing fixed my problem. So I really need your help.
I am newbie and I want to share my experience. Here is my code:
from appium import webdriver
import unittest
from selenium.webdriver.common.by import By
class Instagram(unittest.TestCase):
def setUp(self):
desired_caps = {}
desired_caps['platformName']='Android'
desired_caps['platformVersion']='6.0'
desired_caps['deviceName']='S6S5IN3G'
desired_caps['noReset']='true'
desired_caps['appPackage']='com.instagram'
desired_caps['appActivity']='com.instagram.android.activity.MainTabActivity'
self.driver = webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
#self.driver = webdriver.Remote('http://0.0.0.0:4723/wd/hub',desired_caps)
def tearDown(self):
self.driver.quit()
def test_scrap_email(self):
search_button = self.driver.findElement(By.xpath ("//android.widget.ImageView[@bounds='[126,800][162,836]']"))
search_button.click()
if __name__ == '__main__':
suite = unittest.Testloader().loadTestsFromTestCase(Instagram)
unittest.TextTestRunner(verbosity=1).run(suite)
This is the errors:
Testing started at 01:00 …
C:UsersNinoPycharmProjectsInstagramvenvScriptspython.exe
«C:Program FilesJetBrainsPyCharm Community Edition
2019.1.3helperspycharm_jb_unittest_runner.py» —target mybot_instagram.Instagram.test_scrap_email Launching unittests with
arguments python -m unittest
mybot_instagram.Instagram.test_scrap_email in
C:UsersNinoPycharmProjectsInstagramError Traceback (most recent call last): File
«C:UsersNinoAppDataLocalProgramsPythonPython37libunittestcase.py»,
line 59, in testPartExecutor
yield File «C:UsersNinoAppDataLocalProgramsPythonPython37libunittestcase.py»,
line 624, in run
self.setUp() File «C:UsersNinoPycharmProjectsInstagrammybot_instagram.py», line 17,
in setUp
self.driver = webdriver.Remote(‘http://localhost:4723/wd/hub’,desired_caps) File
«C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesappiumwebdriverwebdriver.py»,
line 144, in init
proxy File «C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesseleniumwebdriverremotewebdriver.py»,
line 157, in init
self.start_session(capabilities, browser_profile) File «C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesappiumwebdriverwebdriver.py»,
line 219, in start_session
response = self.execute(RemoteCommand.NEW_SESSION, parameters) File
«C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesseleniumwebdriverremotewebdriver.py»,
line 321, in execute
self.error_handler.check_response(response) File «C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesseleniumwebdriverremoteerrorhandler.py»,
line 242, in check_response
raise exception_class(message, screen, stacktrace) selenium.common.exceptions.WebDriverException: Message: An unknown
server-side error occurred while processing the command. Original
error: Could not find ‘adb.exe’ in [«C:Program
FilesAndroidplatform-toolsplatform-toolsadb.exe»,»C:Program
FilesAndroidplatform-toolsemulatoradb.exe»,»C:Program
FilesAndroidplatform-toolstoolsadb.exe»,»C:Program
FilesAndroidplatform-toolstoolsbinadb.exe»]. Do you have
Android Build Tools installed at ‘C:Program
FilesAndroidplatform-tools’?Assertion failed
C:UsersNinoAppDataLocalProgramsPythonPython37libunittestcase.py:656:
ResourceWarning: unclosed
outcome.errors.clear() ResourceWarning: Enable tracemalloc to get the
object allocation tracebackRan 1 test in 2.139s
FAILED (errors=1)
Process finished with exit code 1
Assertion failed
Assertion failed
I am using pycharm. When I run the code I see some error log, but when I run it from cmd, there is nothing.
And here the main part of Appium log:
> Android >= 6, since UIAutomator1 framework is not maintained anymore by the OS vendor.
> [Appium] Appium v1.13.0 creating new AndroidDriver (v4.15.1) session
> [Appium] Capabilities:
> [Appium] platformName: Android
> [Appium] platformVersion: 6.0
> [Appium] deviceName: S6S5IN3G
> [Appium] noReset: true
> [Appium] appPackage: com.instagram
> [Appium] appActivity: com.instagram.android.activity.MainTabActivity
> [BaseDriver] W3C capabilities {"alwaysMatch":{"platformNa... and MJSONWP desired capabilities {"platformName":"Android","... were
> provided
> [BaseDriver] Creating session with W3C capabilities: {"alwaysMatch":{"platformNa...
> [BaseDriver] Capability 'noReset' changed from string to boolean. This may cause unexpected behavior
> [BaseDriver] Session created with session id: 786ec1a0-280c-4573-a917-18df120f0629
> [AndroidDriver] Shutting down Android driver
> [AndroidDriver] Called deleteSession but bootstrap wasn't active
> [BaseDriver] Event 'newSessionStarted' logged at 1566428435932 (01:00:35 GMT+0200 (Paris, Madrid (heure d’été)))
> [W3C] Encountered internal error running command: Error: Could not find 'adb.exe' in ["C:Program
> FilesAndroidplatform-toolsplatform-toolsadb.exe","C:Program
> FilesAndroidplatform-toolsemulatoradb.exe","C:Program
> FilesAndroidplatform-toolstoolsadb.exe","C:Program
> FilesAndroidplatform-toolstoolsbinadb.exe"]. Do you have
> Android Build Tools installed at 'C:Program
> FilesAndroidplatform-tools'?
> [W3C] at ADB. (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulesappium-adblibtoolssystem-calls.js:106:11)
> [W3C] at Generator.next ()
> [W3C] at asyncGeneratorStep (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modules@babelruntimehelpersasyncToGenerator.js:3:24)
> [W3C] at _next (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modules@babelruntimehelpersasyncToGenerator.js:25:9)
> [W3C] at run (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmoduleses6.promise.js:75:22)
> [W3C] at C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmoduleses6.promise.js:92:30
> [W3C] at flush (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmodules_microtask.js:18:9)
> [W3C] at process._tickCallback (internal/process/next_tick.js:61:11)
> [HTTP] <-- POST /wd/hub/session 500 49 ms - 1544
> [HTTP]
Can anyone suggest me some solutions please?
THank you.
How to fix Could not find ‘adb.exe’?
I think my question is one of the most asked and answered question of the Android world. I read and tried them all.
- I checked and update my environment variables.
- I desinstalled and reinstalled ANdroid Studio
- I copied pasted adb in all possible folders:
C:UsersNinoAppDataLocalAndroidSdk
C:Program FilesAndroid
C:Program FilesAndroidtools
C:Program FilesAndroidplatform-tools
In fact I spent all the day by searching, reading and testing all the solution possible.
And nothing fixed my problem. So I really need your help.
I am newbie and I want to share my experience. Here is my code:
from appium import webdriver
import unittest
from selenium.webdriver.common.by import By
class Instagram(unittest.TestCase):
def setUp(self):
desired_caps = {}
desired_caps['platformName']='Android'
desired_caps['platformVersion']='6.0'
desired_caps['deviceName']='S6S5IN3G'
desired_caps['noReset']='true'
desired_caps['appPackage']='com.instagram'
desired_caps['appActivity']='com.instagram.android.activity.MainTabActivity'
self.driver = webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
#self.driver = webdriver.Remote('http://0.0.0.0:4723/wd/hub',desired_caps)
def tearDown(self):
self.driver.quit()
def test_scrap_email(self):
search_button = self.driver.findElement(By.xpath ("//android.widget.ImageView[@bounds='[126,800][162,836]']"))
search_button.click()
if __name__ == '__main__':
suite = unittest.Testloader().loadTestsFromTestCase(Instagram)
unittest.TextTestRunner(verbosity=1).run(suite)
This is the errors:
Testing started at 01:00 …
C:UsersNinoPycharmProjectsInstagramvenvScriptspython.exe
«C:Program FilesJetBrainsPyCharm Community Edition
2019.1.3helperspycharm_jb_unittest_runner.py» —target mybot_instagram.Instagram.test_scrap_email Launching unittests with
arguments python -m unittest
mybot_instagram.Instagram.test_scrap_email in
C:UsersNinoPycharmProjectsInstagramError Traceback (most recent call last): File
«C:UsersNinoAppDataLocalProgramsPythonPython37libunittestcase.py»,
line 59, in testPartExecutor
yield File «C:UsersNinoAppDataLocalProgramsPythonPython37libunittestcase.py»,
line 624, in run
self.setUp() File «C:UsersNinoPycharmProjectsInstagrammybot_instagram.py», line 17,
in setUp
self.driver = webdriver.Remote(‘http://localhost:4723/wd/hub’,desired_caps) File
«C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesappiumwebdriverwebdriver.py»,
line 144, in init
proxy File «C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesseleniumwebdriverremotewebdriver.py»,
line 157, in init
self.start_session(capabilities, browser_profile) File «C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesappiumwebdriverwebdriver.py»,
line 219, in start_session
response = self.execute(RemoteCommand.NEW_SESSION, parameters) File
«C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesseleniumwebdriverremotewebdriver.py»,
line 321, in execute
self.error_handler.check_response(response) File «C:UsersNinoPycharmProjectsInstagramvenvlibsite-packagesseleniumwebdriverremoteerrorhandler.py»,
line 242, in check_response
raise exception_class(message, screen, stacktrace) selenium.common.exceptions.WebDriverException: Message: An unknown
server-side error occurred while processing the command. Original
error: Could not find ‘adb.exe’ in [«C:Program
FilesAndroidplatform-toolsplatform-toolsadb.exe»,»C:Program
FilesAndroidplatform-toolsemulatoradb.exe»,»C:Program
FilesAndroidplatform-toolstoolsadb.exe»,»C:Program
FilesAndroidplatform-toolstoolsbinadb.exe»]. Do you have
Android Build Tools installed at ‘C:Program
FilesAndroidplatform-tools’?Assertion failed
C:UsersNinoAppDataLocalProgramsPythonPython37libunittestcase.py:656:
ResourceWarning: unclosed
outcome.errors.clear() ResourceWarning: Enable tracemalloc to get the
object allocation tracebackRan 1 test in 2.139s
FAILED (errors=1)
Process finished with exit code 1
Assertion failed
Assertion failed
I am using pycharm. When I run the code I see some error log, but when I run it from cmd, there is nothing.
And here the main part of Appium log:
> Android >= 6, since UIAutomator1 framework is not maintained anymore by the OS vendor.
> [Appium] Appium v1.13.0 creating new AndroidDriver (v4.15.1) session
> [Appium] Capabilities:
> [Appium] platformName: Android
> [Appium] platformVersion: 6.0
> [Appium] deviceName: S6S5IN3G
> [Appium] noReset: true
> [Appium] appPackage: com.instagram
> [Appium] appActivity: com.instagram.android.activity.MainTabActivity
> [BaseDriver] W3C capabilities {"alwaysMatch":{"platformNa... and MJSONWP desired capabilities {"platformName":"Android","... were
> provided
> [BaseDriver] Creating session with W3C capabilities: {"alwaysMatch":{"platformNa...
> [BaseDriver] Capability 'noReset' changed from string to boolean. This may cause unexpected behavior
> [BaseDriver] Session created with session id: 786ec1a0-280c-4573-a917-18df120f0629
> [AndroidDriver] Shutting down Android driver
> [AndroidDriver] Called deleteSession but bootstrap wasn't active
> [BaseDriver] Event 'newSessionStarted' logged at 1566428435932 (01:00:35 GMT+0200 (Paris, Madrid (heure d’été)))
> [W3C] Encountered internal error running command: Error: Could not find 'adb.exe' in ["C:Program
> FilesAndroidplatform-toolsplatform-toolsadb.exe","C:Program
> FilesAndroidplatform-toolsemulatoradb.exe","C:Program
> FilesAndroidplatform-toolstoolsadb.exe","C:Program
> FilesAndroidplatform-toolstoolsbinadb.exe"]. Do you have
> Android Build Tools installed at 'C:Program
> FilesAndroidplatform-tools'?
> [W3C] at ADB. (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulesappium-adblibtoolssystem-calls.js:106:11)
> [W3C] at Generator.next ()
> [W3C] at asyncGeneratorStep (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modules@babelruntimehelpersasyncToGenerator.js:3:24)
> [W3C] at _next (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modules@babelruntimehelpersasyncToGenerator.js:25:9)
> [W3C] at run (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmoduleses6.promise.js:75:22)
> [W3C] at C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmoduleses6.promise.js:92:30
> [W3C] at flush (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmodules_microtask.js:18:9)
> [W3C] at process._tickCallback (internal/process/next_tick.js:61:11)
> [HTTP] <-- POST /wd/hub/session 500 49 ms - 1544
> [HTTP]
Can anyone suggest me some solutions please?
THank you.
Назовите меня глупым, но если вы только что прочитали SDK Readme.txt
$ cat SDK Readme.txt
Добро пожаловать в Android SDK!
Архив Android SDK теперь содержит только инструменты. Он больше не поставляется с определенной платформой Android или надстройкой Google. Вместо этого вы используете SDK Manager для установки или обновления компонентов SDK, таких как платформы, инструменты, надстройки и документация.
Чтобы начать разработку приложений, необходимо установить хотя бы одну версию платформы Android с помощью SDK Manager.
Для этого требуется подключение к Интернету, поэтому, если вы планируете использовать SDK в автономном режиме, обязательно загрузите необходимые компоненты в режиме онлайн.
Чтобы запустить SDK Manager, запустите программу tools / android.
Из командной строки вы также можете напрямую запустить обновление, выполнив: tools / android update sdk
Для получения дополнительной информации посетите веб-сайт Android по адресу
http://developer.android.com
Я устал, мне нужно отдохнуть — это истощило меня изо всех сил.
The adb.exe file will be located at your Android SDK folder, inside platform-tools
...android-sdk-pathplatform-toolsadb.exe
The default location where Android SDK is installed is:
C:Users<insert username here>AppDataLocalAndroidsdk
So adb will be located at:
C:Users<insert username here>AppDataLocalAndroidsdkplatform-toolsadb.exe
To access it on a command line, open cmd.exe and type:
cd C:Users<insert username here>AppDataLocalAndroidsdkplatform-tools
and then your normal command
adb <insert parameters here>
Call me silly, but if you just read the SDK Readme.txt
$ cat SDK Readme.txt
Welcome to the Android SDK!
The Android SDK archive now only contains the tools. It no longer comes
populated with a specific Android platform or Google add-on. Instead you
use the SDK Manager to install or update SDK components such as platforms,
tools, add-ons, and documentation.
In order to start developing applications, you must install at least one
version of the Android platform using the SDK Manager.
This requires an Internet connection, so if you plan to use the SDK
offline, please make sure to download the necessary components while online.
To start the SDK Manager, please execute the program «tools/android».
From the command-line you can also directly trigger an update by
executing:
tools/android update sdk
For more information, please consult the Android web site at
http://developer.android.com
I’m tired now, I must rest — that drained me of all my energy.
Вы когда-нибудь получали сообщение об ошибке ADB command not found при попытке подключить смартфон к персональному компьютеру? Эта ошибка не позволяет вам запускать команды разработчика на вашем телефоне.
Но это легко исправить, как мы покажем в этой статье.
Почему команда ADB не найдена?
Ниже перечислены некоторые из причин, по которым команда ADB не может быть найдена:
- Устаревший драйвер. Если интерфейс ADB устарел, вы можете получить команду устройств ADB не найдена или ошибку ADB: недоступен или не найден. Решение этой проблемы — обновить драйвер до последней версии.
- Отключенная функция телефона. Иногда эта проблема может быть связана с тем, что на вашем телефоне отключены функции отладки и разработчика. Вам необходимо включить эту функцию, чтобы внести изменения в свой телефон.
Как я могу исправить ошибку ADB command not found?
1. Выберите протокол передачи мультимедиа на своем телефоне.
- Первое, что вам нужно будет сделать, это проверить, правильно ли подключен ваш смартфон.
- После этого вам нужно будет выбрать уведомление о USB-подключении на вашем телефоне.
- Затем вам нужно будет выбрать MTP в качестве режима подключения.
2. Обновить интерфейс ADB
- Откройте Диспетчер устройств.
- Щелкните правой кнопкой мыши параметр «Интерфейс Android ADB» или «Телефон Android» в разделе «Другие устройства» и выберите «Обновить драйвер».
- Выберите Поиск драйверов на моем компьютере.
- Теперь выберите «Позвольте мне выбрать» из списка драйверов устройств на моем компьютере.
- Теперь на вашем экране появится диалоговое окно с текстом «Показать все устройства», нажмите «Далее».
- Нажмите «Установить диск».
- После этого перейдите в место, где вы установили SDK. Обычно это C:Program FilesAndroidandroid-sdkextrasgoogleusb_driver.
- Затем вам нужно будет дважды щелкнуть файл android_winusb.inf и выбрать интерфейс Android ADB.
- Теперь нажмите «Да», а затем «Установить».
- После завершения процесса вам придется закрыть окно.
3. Включите отладку по USB и параметры разработчика
- Первое, что вам нужно сделать, это зайти в настройки телефона и выбрать «О программе».
- Здесь нажмите номер сборки семь раз, чтобы включить параметры разработчика.
- Затем вам придется вернуться и выбрать «Параметры разработчика».
- Теперь прокрутите вниз и нажмите «Отладка по USB».
4. Запустите команду ADB из каталога установки
- Откройте командную строку.
- Перейдите в каталог, в котором установлен Android SDK, в командной строке. По умолчанию это должен быть один из следующих путей:
C:Program Files (x86)Androidandroid-sdktools
C:Program Files (x86)Androidandroid-sdkplatform-tools
- Попробуйте запустить команду ADB из этих каталогов.
Кроме того, вы можете открыть командную строку в каталоге Android SDK, выполнив следующие действия:
- Откройте каталог установки Android SDK.
- Нажмите и удерживайте Shift клавишу и щелкните правой кнопкой мыши пространство внутри каталога. Выберите опцию «Открыть окно PowerShell здесь».
- Когда откроется окно PowerShell, попробуйте запустить команду ADB.
5. Создайте путь пользователя или системной переменной для ADB или fastboot.
- Нажмите Windows клавишу, введите Advanced System и выберите Просмотр дополнительных параметров системы.
- Нажмите кнопку «Переменные среды».
- Теперь выберите любой элемент в разделе «Системные» или «Пользовательские переменные» и нажмите кнопку «Создать».
- Введите Path в качестве имени переменной.
- Затем нажмите кнопку «Обзор каталога», выберите инструменты платформы и нажмите «ОК».
- Наконец, нажмите кнопку «ОК», чтобы подтвердить изменения, и не забудьте нажать кнопку «ОК» на кнопке «Переменные среды».
Мы надеемся, что эта статья и наши решения помогли вам исправить bash: ADB: команда не найдена, zsh: команда не найдена: и другие варианты этой ошибки.
Не стесняйтесь сообщить нам о решении, которое помогло вам решить эту проблему, в комментариях ниже.
Исправить ошибку «Точка входа не найдена «
Как исправить Не удалось найти adb.exe?
Я думаю, что мой вопрос — один из самых часто задаваемых и отвечающих на вопросы в мире Android. Прочитал и все перепробовал.
- Я проверил и обновил свои переменные среды.
- Я деинсталлировал и переустановил ANdroid Studio
- Я скопировал вставленный adb во все возможные папки: C: Users Nino AppData Local Android Sdk C: Program Files Android C: Program Files Android tools C: Program Files Android platform-tools
Фактически я потратил весь день на поиск, чтение и тестирование всех возможных решений.
И мою проблему ничего не решило. Так что мне действительно нужна твоя помощь.
Я новичок и хочу поделиться своим опытом. Вот мой код:
from appium import webdriver import unittest from selenium.webdriver.common.by import By class Instagram(unittest.TestCase): def setUp(self): desired_caps = {} desired_caps['platformName']='Android' desired_caps['platformVersion']='6.0' desired_caps['deviceName']='S6S5IN3G' desired_caps['noReset']='true' desired_caps['appPackage']='com.instagram' desired_caps['appActivity']='com.instagram.android.activity.MainTabActivity' self.driver = webdriver.Remote('http://localhost:4723/wd/hub',desired_caps) #self.driver = webdriver.Remote('http://0.0.0.0:4723/wd/hub',desired_caps) def tearDown(self): self.driver.quit() def test_scrap_email(self): search_button = self.driver.findElement(By.xpath ('//android.widget.ImageView[@bounds='[126,800][162,836]']')) search_button.click() if __name__ == '__main__': suite = unittest.Testloader().loadTestsFromTestCase(Instagram) unittest.TextTestRunner(verbosity=1).run(suite)
Это ошибки:
Тестирование началось в 01:00 … C: Users Nino PycharmProjects Instagram venv Scripts python.exe «C: Program Files JetBrains PyCharm Community Edition 2019.1.3 helpers pycharm_jb_unittest_runner.py» — -target mybot_instagram.Instagram.test_scrap_email Запуск модульных тестов с аргументами python -m unittest mybot_instagram.Instagram.test_scrap_email в C: Users Nino PycharmProjects Instagram
Отслеживание ошибок (последний вызов последним): файл «C: Users Nino AppData Local Programs Python Python37 lib unittest case.py», строка 59, в файле testPartExecutor yield File «C: Users Nino AppData Local Programs Python Python37 lib unittest case.py «, строка 624, при запуске self.setUp () Файл» C: Users Nino PycharmProjects Instagram mybot_instagram.py «, строка 17, в setUp self.driver = webdriver.Remote (‘http: // localhost: 4723 / wd / hub’, желаемый_caps) Файл «C: Users Nino PycharmProjects Instagram venv lib site-packages appium webdriver webdriver.py «, строка 144, в в этом прокси-файл «C: Users Nino PycharmProjects Instagram venv lib site-packages selenium webdriver remote webdriver.py», строка 157, в в этом self.start_session (возможности, browser_profile) Файл «C: Users Nino PycharmProjects Instagram venv lib site-packages appium webdriver webdriver.py», строка 219, в start_session response = self.execute (RemoteCommand .NEW_SESSION, параметры) Файл «C: Users Nino PycharmProjects Instagram venv lib site-packages selenium webdriver remote webdriver.py», строка 321, при выполнении self.error_handler.check_response (ответ) Файл «C: Users Nino PycharmProjects Instagram venv lib site-packages selenium webdriver remote errorhandler.py», строка 242, в check_response вызывает exception_class (message, screen, stacktrace) selenium.common. exceptions.WebDriverException: Сообщение: при обработке команды произошла неизвестная ошибка на стороне сервера. Исходная ошибка: не удалось найти ‘adb.exe’ в [«C: Program Files Android platform-tools platform-tools adb.exe», «C: Program Files Android platform-tools emulator adb.exe «,» C: Program Files Android platform-tools tools adb.exe «,» C: Program Files Android platform-tools tools bin adb.exe «]. Установлены ли у вас инструменты сборки Android в папке C: Program Files Android platform-tools?
Ошибка утверждения C: Users Nino AppData Local Programs Python Python37 lib unittest case.py: 656: ResourceWarning: unclosed result.errors.clear () ResourceWarning: включить tracemalloc, чтобы получить трассировку выделения объекта
Выполнить 1 тест за 2,139 с.
НЕ ВЫПОЛНЕНО (ошибки = 1)
Процесс завершен с кодом выхода 1
Утверждение не удалось
Утверждение не удалось
Я использую pycharm. Когда я запускаю код, я вижу журнал ошибок, но когда я запускаю его из cmd, ничего нет.
И вот основная часть журнала Appium:
> Android >= 6, since UIAutomator1 framework is not maintained anymore by the OS vendor. > [Appium] Appium v1.13.0 creating new AndroidDriver (v4.15.1) session > [Appium] Capabilities: > [Appium] platformName: Android > [Appium] platformVersion: 6.0 > [Appium] deviceName: S6S5IN3G > [Appium] noReset: true > [Appium] appPackage: com.instagram > [Appium] appActivity: com.instagram.android.activity.MainTabActivity > [BaseDriver] W3C capabilities {'alwaysMatch':{'platformNa... and MJSONWP desired capabilities {'platformName':'Android','... were > provided > [BaseDriver] Creating session with W3C capabilities: {'alwaysMatch':{'platformNa... > [BaseDriver] Capability 'noReset' changed from string to boolean. This may cause unexpected behavior > [BaseDriver] Session created with session id: 786ec1a0-280c-4573-a917-18df120f0629 > [AndroidDriver] Shutting down Android driver > [AndroidDriver] Called deleteSession but bootstrap wasn't active > [BaseDriver] Event 'newSessionStarted' logged at 1566428435932 (01:00:35 GMT+0200 (Paris, Madrid (heure d’été))) > [W3C] Encountered internal error running command: Error: Could not find 'adb.exe' in ['C:\Program > Files\Android\platform-tools\platform-tools\adb.exe','C:\Program > Files\Android\platform-tools\emulator\adb.exe','C:\Program > Files\Android\platform-tools\tools\adb.exe','C:\Program > Files\Android\platform-tools\tools\bin\adb.exe']. Do you have > Android Build Tools installed at 'C:Program > FilesAndroidplatform-tools'? > [W3C] at ADB. (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulesappium-adblibtoolssystem-calls.js:106:11) > [W3C] at Generator.next () > [W3C] at asyncGeneratorStep (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modules@babelruntimehelpersasyncToGenerator.js:3:24) > [W3C] at _next (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modules@babelruntimehelpersasyncToGenerator.js:25:9) > [W3C] at run (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmoduleses6.promise.js:75:22) > [W3C] at C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmoduleses6.promise.js:92:30 > [W3C] at flush (C:UsersNinoAppDataLocalProgramsAppiumresourcesappnode_modulesappiumnode_modulescore-jsmodules_microtask.js:18:9) > [W3C] at process._tickCallback (internal/process/next_tick.js:61:11) > [HTTP] <-- POST /wd/hub/session 500 49 ms - 1544 > [HTTP]
Кто-нибудь может предложить мне несколько решений?
Спасибо.
Тебе нужно иметь adb.exe
в вашей операционной системе PATH
Я бы рекомендовал использовать следующую настройку:
- Создайте
ANDROID_HOME
переменная среды, указывающая на установку Android SDK - Создайте
JAVA_HOME
переменная среды, указывающая на вашу установку JDK -
Создайте
PATH
переменная окружения, например:%ANDROID_HOME%tools;%ANDROID_HOME%platform-tools;%JAVA_HOME%bin
-
Этого должно быть достаточно для успешного запуска вашего теста Python Appium.
Вы всегда можете использовать инструмент appium-doctor, чтобы проверить целостность вашей установки предварительных требований Appium.
Дополнительная информация:
- Appium Начало работы
- Appium — Примеры кода — Python
- Большое спасибо @Dmitri за этот отличный ответ. Это очень ясно и явно исправлено. Теперь я столкнулся с проблемой «Не удалось найти ‘aapt.exe’» :-). Я начну новое расследование по этому поводу. Спасибо за ваше время.
Tweet
Share
Link
Plus
Send
Send
Pin