Освоение ADB: подробное объяснение рабочих команд и полное руководство по использованию (2)
Освоение ADB: подробное объяснение рабочих команд и полное руководство по использованию (2)

Предисловие

ADB, полное название Android Debug Bridge, — это универсальный инструмент отладки, предоставляемый Android. Это инструмент командной строки с архитектурой C/S. С помощью этого инструмента наш компьютер может взаимодействовать с устройствами Android. В предыдущей статье мы представили установку adb и некоторые основные команды adb. В этой статье мы познакомим вас с некоторыми командами, которые мы часто используем при проведении автоматического тестирования приложений.

команда adb оболочки am

amдляActivity Managerаббревиатура,то есть управление событиями,мы можем использоватьamдля управления устройством для выполнения различных операций。следующее:

Язык кода:bash
копировать
# Используйте я чтобы запустить приложение Taobao
adb shell am start com.taobao.taobao/com.taobao.tao.TBMainActivity

Его также можно использовать для получения времени запуска приложения следующим образом:

Язык кода:bash
копировать
adb shell am start -W com.qiniu.pili.droid.shortvideo.effect.demo/com.qiniu.pili.droid.shortvideo.demo.activity.MainActivity
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.qiniu.pili.droid.shortvideo.effect.demo/com.qiniu.pili.droid.shortvideo.demo.activity.MainActivity }
Status: ok
Activity: com.qiniu.pili.droid.shortvideo.effect.demo/com.qiniu.pili.droid.shortvideo.demo.activity.MainActivity
ThisTime: 289
TotalTime: 289
WaitTime: 311
Complete

в миллисекундах
Щелкните значок и отпустите его. Это время — это системное время (время выделения памяти и ЦП), а также время ожидания запуска ресурсов приложением.
ThisTime: время, необходимое для запуска интерфейса.
TotalTime: собственное время запуска приложения = ThisTime. + Время запуска приложений и других ресурсов
WaitTime: время запуска системы = TotalTime + Время запуска системного ресурса

Получить имя пакета и имя интерфейса

Язык кода:bash
копировать
 adb shell dumpsys window | grep mFocusedApp
 или
 adb shell "dumpsys window | grep mCurrentFocus"

Примечание. Имя пакета приложения уникально и не может повторяться.

adb имитирует клавиши телефона

используя АБР имитирует клавиши телефона До,Нам нужно сначала его настроить,Установить путьдля:Настройки – Параметры разработчика – Положение указателя.,Мы можем сначала запуститьadb shell inputкоманда, чтобы увидеть, как имитировать клавиши телефона:

Язык кода:bash
копировать
# Сначала подключите устройство
adb connect 127.0.0.1:7555
connected to 127.0.0.1:7555
# выполнить команду
adb shell input
Usage: input [<source>] <command> [<arg>...]

The sources are:
      mouse
      keyboard
      joystick
      touchnavigation
      touchpad
      trackball
      stylus
      dpad
      touchscreen
      gamepad

The commands and default sources are:
      text <string> (Default: touchscreen)
      keyevent [--longpress] <key code number or name> ... (Default: keyboard)
      tap <x> <y> (Default: touchscreen)
      swipe <x1> <y1> <x2> <y2> [duration(ms)] (Default: touchscreen)
      press (Default: trackball)
      roll <dx> <dy> (Default: trackball)

Примеры операций следующие:

Язык кода:bash
копировать
- Имитировать событие клика
adb shell input tap координата х координата y
adb shell input tap 528 1539

- Введите текст
Сначала вам нужно переместить курсор в поле ввода, а затем выполнить следующую команду
adb shell input text zengzengzeng

- Имитировать скользящее событие
adb shell swip <отправная точкаx> <отправная точкаy> <конецx> <конецy> <Продолжительность слайда>
adb shell input swipe 520 331 520 1017 2000
2000 — время скольжения, единица измерения — миллисекунды.

- ключ возврата
adb shell input keyevent 4

- Вернуться к кнопке «Домой» (установлено для применения к фону)
adb shell input keyevent 3

- усиление громкости
adb shell input keyevent 24

- Уменьшить громкость
adb shell input keyevent 25

Использование ресурсов

Мы также можем использовать команду adb для проверки использования процессора, памяти и других ресурсов устройства следующим образом:

Язык кода:bash
копировать
# Просмотр текущего использования процессора системы
adb shell dumpsys cpuinfo
Получается среднее значение за определенный период времени.

# Использование процесса

adb shell top 
adb shell top | grep "имя пакета" —— Посмотреть некоторые характеристики пакета
adb shell top -d 1 |grep "имя пакета"

# Использование памяти
adb shell dumpsys meminfo

Подвести итог

В этой статье в основном представлены некоторые расширенные возможности использования adb.,adb shell amи связанные команды, которые мы можем использоватьappiumруководитьAppОчень полезно при автоматизации тестирования.,Это может помочь нам быстро найти приложения и названия событий.,Некоторые команды просмотра индикаторов производительности также могут помочь нам лучше проводить тестирование приложений.,Я надеюсь, что эта статья поможет каждому.

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 и детали кода