Intereting Posts
Как получить контекст для BaseAdapter в Android Как добавить параметры в api (http post), используя библиотеку okhttp в Android LLDB: добавить файл символов? Как настроить календарь в Android для определенного часа Элемент прокрутки элемента ListView («UIKit Dynamics») Отключить исходные выходные данные logcat в Android «Системные службы, недоступные для операций до onCreate ()« Сообщение об ошибке? Возможно ли изменить имя листа с помощью apache poi MS excel java android Страница Curl Animation в андроиде? Масштабирование и панорамирование вида в андроиде Android: проверьте имя учетной записи устройства google на сервере Как установить разные высоты для каждой строки в ListView? Не удалось получить доступ к приложению App Engine, запущенному в Android Studio, с помощью приложения Android Device в локальной сети Не удалось найти следующие классы: android.support.v7.internal.app.WindowDecorActionBar Как проверить, включено ли действие?

Как запустить приложение с помощью инструментов ADB для Android?

Как отправить намерение с помощью инструментов ADB Android?

Solutions Collecting From Web of "Как запустить приложение с помощью инструментов ADB для Android?"

adb shell am start -n com.package.name/com.package.name.ActivityName 

Или вы можете использовать это непосредственно:

 adb shell am start -n com.package.name/com.package.name.ActivityName 

Вы также можете указать действия, которые будут фильтроваться с помощью ваших целевых фильтров:

 am start -a com.example.ACTION_NAME -n com.package.name/com.package.name.ActivityName 

Можно запустить приложение, определяющее имя пакета, только с помощью инструмента обезьяны , следуя этому шаблону:

 adb shell monkey -p your.app.package.name -c android.intent.category.LAUNCHER 1 

Команда используется для запуска приложения с использованием инструмента обезьяны, который генерирует случайный ввод для приложения. Последняя часть команды – целое число, определяющее количество генерируемых случайных данных для приложения. В этом случае число равно 1, что фактически используется для запуска приложения (щелчок значка).

Или вы можете использовать это:

 adb shell am start -n com.package.name/.ActivityName 

Пользователи linux / mac также могут создать сценарий для запуска apk с чем-то вроде следующего:

Создайте файл с именем «adb-run.sh» с этими тремя строками:

 pkg=$(aapt dump badging $1|awk -F" " '/package/ {print $2}'|awk -F"'" '/name=/ {print $2}') act=$(aapt dump badging $1|awk -F" " '/launchable-activity/ {print $2}'|awk -F"'" '/name=/ {print $2}') adb shell am start -n $pkg/$act 

Затем «chmod + x adb-run.sh», чтобы сделать его исполняемым.

Теперь вы можете просто:

Adb-run.sh myapp.apk

Преимущество здесь в том, что вам не нужно знать имя пакета или имя запускаемой программы. Аналогично, вы можете создать «adb-uninstall.sh myapp.apk»

Примечание. Это требует, чтобы у вас был доступ к вашему пути. Вы можете найти его в новой папке инструментов сборки в SDK.

Кроме того, я хочу упомянуть еще одну вещь.

Когда вы запускаете приложение из adb shell am , оно автоматически добавляет флаг FLAG_ACTIVITY_NEW_TASK, который приводит к изменению поведения. См. Код .

Например, если вы запускаете активность Play Маркета из adb shell am , нажатие кнопки « Назад » (кнопка « Назад ») не приведет вас к вашему приложению, вместо этого вам понадобится предыдущая игра в Play Маркете, если она есть (если не было Play Store, тогда вам понадобится ваше приложение). Документация FLAG_ACTIVITY_NEW_TASK гласит:

Если задача уже запущена для текущей активности, то новое действие не будет запущено; Вместо этого текущая задача будет просто перенесена в переднюю часть экрана с состоянием, в котором оно было последним

Это заставило меня потратить несколько часов, чтобы выяснить, что пошло не так.

Поэтому имейте в виду, что adb shell am добавляет флаг FLAG_ACTIVITY_NEW_TASK .

Откройте файл ~ / .bash_profile и добавьте эти функции bash в конец файла

 function androidinstall(){ adb install -r ./bin/$1.apk } function androidrun(){ ant clean debug adb shell am start -n $1/$1.$2 } 

Затем откройте папку проекта Android

 androidinstall app-debug && androidrun com.example.app MainActivity 

Мы можем также запустить приложение, зная тип приложения и подавая его с данными:

 adb shell am start -d "file:///sdcard/sample.3gp" -t "video/3gp" -a android.intent.action.VIEW 

Эта команда отображает доступные видеопроигрыватели для воспроизведения файла sample.3gp