Использование ADB для управления состоянием сети при автоматизированном тестировании Android
Использование ADB для управления состоянием сети при автоматизированном тестировании Android

Обмен технологиями: использование ADB для управления состоянием сети Android

Переключение статуса сети при автоматическом тестировании Android — один из ключевых шагов для улучшения охвата тестирования и выявления потенциальных проблем. В этой статье рассказывается, как использовать ADB для обнаружения и управления состоянием сети устройств Android.

Переключение статуса сети при автоматизированном тестировании стало особенно важным.

Запрос состояния сети

  1. adb shell netstat

Во-первых, мы можем использовать команду netstat оболочки adb для просмотра состояния сети на устройстве. Эта команда предоставляет краткий список сетевых подключений, включая текущее соединение и статус прослушивания.

Язык кода:javascript
копировать
adb shell netstat

Отобразится таблица сетевых подключений, включая локальный адрес, удаленный адрес, состояние и многое другое. С помощью этой команды вы сможете понять текущую сетевую активность устройства.

  1. adb shell dumpsys network

Если вам нужна более подробная и полная информация,Можно использоватьadb shell dumpsys networkЗаказ。этот Заказ Предоставлена ​​информация об устройствесетьсостояниеи Подробное представление информации。

Язык кода:javascript
копировать
adb shell dumpsys network

Это выведет обширную сетевую информацию, включая текущие сетевые подключения, использование данных и многое другое. Анализируя эту информацию, вы сможете получить более глубокое представление о состоянии сети вашего устройства.

Управление сетевыми подключениями

  1. Включить и отключить соединение для передачи данных

Используя следующие команды, вы можете включать и отключать подключение для передачи данных устройства через ADB, тем самым контролируя, имеет ли устройство доступ к Интернету через мобильные сети передачи данных.

Включить подключение для передачи данных:

Язык кода:javascript
копировать
adb shell svc data enable

Отключить соединение для передачи данных:

Язык кода:javascript
копировать
adb shell svc data disable

Эти две команды могут помочь вам быстро переключить статус подключения к данным устройства, что очень удобно для тестирования и отладки сетевых подключений.

  1. Переключить режим полета ADB также позволяет перевести ваше устройство в режим полета с помощью широковещательной команды.,тем самым отключив все сетевые соединения,Включает Wi-Fi и мобильные данные. Вот соответствующие команды:

Установите режим полета:

Язык кода:javascript
копировать
adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state true

Отключить режим полета:

Язык кода:javascript
копировать
adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state false

Это полезно для моделирования поведения устройства в несетевой среде, например, для проверки стабильности приложения при отключении от Интернета.

Разбор команд

adb shell netstatРазбор команд:

оболочка adb: войдите в среду оболочки устройства через ADB. netstat: отображает статистику сети, включая текущее соединение и статус прослушивания. Пример вывода:

Язык кода:javascript
копировать
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 192.168.1.2:5555        192.168.1.3:5555        ESTABLISHED

adb shell dumpsys networkРазбор команд:

оболочка adb: войдите в среду оболочки устройства через ADB. Сеть dumpsys: отображение состояния сети и информации. Пример вывода:

Язык кода:javascript
копировать
Mobile data state: CONNECTED
Network Type: LTE
...

adb shell svc data enable и adb shell svc data disableРазбор команд:

Язык кода:javascript
копировать
оболочка adb: войдите в среду оболочки устройства через ADB.
svc data включить: включить подключение для передачи данных.
svc data отключить: отключить соединение для передачи данных.

adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state true и adb shell am broadcast -a android.intent.action.AIRPLANE_MODE --ez state false

Разбор команд:

  • adb shell:проходитьADBв устройствоshellсреда。
  • am broadcast:Отправить широковещательное сообщение。
  • -a android.intent.action.AIRPLANE_MODE:Указанное широковещательное действие Переключить режим полета。
  • --ez state true:Включите режим полета。
  • --ez state false:Установите режим полета отключенным。

в заключение

через эту статью,Мы узнали, как сделать Запрос состояния сетииуправлять на устройствах Android с помощью ADB. Эти команды полезны разработчикам и тестировщикам при отладке приложений, моделировании сред и обеспечении правильной работы приложений в различных условиях. При использовании этих команд,Пожалуйста, убедитесь, что устройство подключено к компьютеру через USB.,И ADB настроен правильно.

Я надеюсь, что эти команды и анализ ADB помогут вам в процессе разработки и отладки Android. Приятного кодирования!

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода