Appium: версия сервера adb (31) не соответствует этому клиенту (36)
Вот моя проблема, я запускаю свой Appium script с помощью python вместо
py.test. Я делаю это потому, что py.test не играет хорошо с переменными, которые я хочу получить из текстового файла. Однако, когда я запускаю свой script с помощью python, все работает, кроме как бы то ни было, мой первый метод всегда будет иметь ошибку. Кто-нибудь знает, как исправить ошибку версия сервера adb (31) не соответствует этому клиенту (36)?
версия сервера adb (32) не соответствует этому клиенту (36); killing... "shell getprop ro.build.version.release" вышел с кодом 1 { "stdout": "," stderr ":" ошибка: устройство "версия сервера adb (32) не соответствует этому клиенту (36 ); killing... 'not found\n", "code": 1}
Ответы
Ответ 1
Я исправил это, выполнив следующее:
- в настройках GenyMotion → вкладка ADB,
- Вместо Использовать инструменты Genymotion для Android (по умолчанию), я выбрал Использовать пользовательские инструменты Android SDK, а затем перешел к моему установленному SDK.
Ответ 2
Одна из возможных причин возникновения этой ошибки связана с различием в версиях adb на машине разработки и подключенным подключенным устройством/эмулятором, используемым для отладки.
Таким образом, разрешение:
Это приведет к успешному запуску adb. Теперь вы можете подключить устройство.
Надеюсь, что это поможет.
Ответ 3
Точно такая же проблема. Пробовал убить и начать, но что это сработало для меня:
adb reconnect
Надеюсь, что это поможет.
Ответ 4
Кажется, в вашей системе есть 2 версии adb. Прочтите их и сохраните adb только в своей Android SDK, удалите все остальные папки, включая файл adb.
Вы можете узнать, какой adb вы используете в Application Monitor:
![введите описание изображения здесь]()
Это может быть проблема, если adb не входит в вашу папку Android SDK.
В моем случае я обнаружил, что я запускал adb отсюда:
/Library/Поддержка приложений /RSupport/Mobizen 2
после удаления папки Mobizen2, все команды adb работают нормально.
Ответ 5
Скорее всего, на вашем компьютере имеется несколько версий adb. Вы запускаете сервер adb с использованием одной версии, а затем пытаетесь подключиться к этому серверу с использованием другой версии.
Например, у Genymotion есть собственный adb, и если вы запустите эмулятор Genymotion, а затем попытаетесь использовать adb из Android SDK, скорее всего, у вас будет такая ошибка (последний Genymotion, который имеет 2.7.2, имеет версию adb 1.0.32, а последняя версия Android SDK имеет версию adb 1.0.36).
Ответ 6
Для меня это происходило, потому что у меня были инструменты для Android в двух местах:
1. Место, где я вручную загрузил его из Google
2. Автоматическая загрузка с помощью студии Android
Что мне удалось сделать, это полностью удалить папку в # 1 и указать мой профиль bash и все другие ссылки на место, где Android-студия установила его для меня:/Users/my_user_name/Library/Android/sdk
Это разрешило это.
Ответ 7
Для тех из вас, у кого установлен HTC Sync, удаление приложения исправило эту проблему для меня.
Ответ 8
У меня была такая же проблема, поскольку обновленный platfrom-инструмент до версии 24
и не уверен в корневой причине... (текущая версия adb 1.0.36)
Также попробуйте adb kill-server
и adb start-server
, но проблема все еще произошла
но когда я понижаю версию adb до 1.0.32, все работает
Ответ 9
В моем случае решение было на базе ОС Ubuntu:
sudo apt remove android-tools-adb
adb kill-server
adb start-server
опционально версию можно проверить, используя команду adb version
.
Поскольку вы или ваш дистрибутив, возможно, уже установили ADB
перед установкой в Android Studio.
И это может вызвать эту проблему.
Ответ 10
В Windows просто зайдите в диспетчер задач Windows, если есть какие-либо другие процессы adb.
Если да, просто убейте его, а затем выполните команду "adb start-server".
Надеюсь, он должен решить проблему.
Ответ 11
Для всех, у кого есть эта проблема (на окнах):
- Открыть диспетчер задач
- Перейдите к процессам и выберите ADB.EXE
- Щелкните его правой кнопкой мыши и проверьте свойства
- Скорее всего, вы увидите другой путь от того, где работает adb.exe(либо менеджер HTC, Genymotion и т.д.)
- Убейте процесс
- Запустите ADB.exe с вашего студийного пути android (в моем случае: C:\Users\%user%\AppData\Local\Android\sdk\platform-tools)
Это решило проблему в моем случае.
Ответ 12
Что сработало для меня:
-
adb kill-server
- Закрыть все
chrome://inspect/#devices
окна/вкладки
-
adb start-server
-
adb devices
Ответ 13
- adb kill-server
- закрыть любое приложение для ПК, которое вы используете для управления телефоном Android, например. 360mobile (360 手机 助手). вам может потребоваться завершить их в диспетчере задач при необходимости.
- adb start-server, и он должен быть решен
Ответ 14
Эта проблема для меня была вызвана одновременным запуском apowermirror, из чего я могу сказать, что любое программное обеспечение, которое может использовать другую версию adb, может вызвать эти проблемы, как упоминают другие в этой теме, это может включать Genymotion или другие проблема была в нереальной студии.
Ответ 15
Если вы используете Android-студию, попробуйте:
Удалить и переместить переменную adb из переменной system/user.
Затем перейдите в терминал студии android и введите там команду start-service adb.
Я попробовал это, и это сработало для меня.
Ответ 16
У меня недавно была и эта проблема, и после того, как ни один из ответов здесь не работал, я понял, что APK, который я тестировал, был бы построен против последнего sdk.
Итак, я вошел в настройки Appium и изменил версию платформы на последнюю версию, и это решило проблему для меня.