Я хочу начать работу через оболочку adb. Так что я могу запустить конкретную деятельность, которая необходима
Можно ли начать работу через оболочку adb?
Ответ 1
Запустите оболочку adb и введите команду следующим образом
am start -n yourpackagename/.activityname
Ответ 2
например:
MyPackageName - com.example.demo
MyActivityName - com.example.test.MainActivity
adb shell am start -n com.example.demo/com.example.test.MainActivity
Ответ 3
Я запускаю его, как AndroidStudio:
am start -n "com.example.app.dev/com.example.app.phonebook.PhoneBookActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Если у вас есть вкус продукта, например dev
, он должен появляться только в имени пакета приложения, но не должен появляться в имени пакета действий.
Для эмулятора он работает без флага android:exported="true"
при действии в AndroidManifest.xml
, но я счел полезным добавить его для неуправляемого физического устройства, чтобы он работал.
Ответ 4
adb shell am broadcast -a android.intent.action.xxx
Упоминайте xxx как действие, указанное в файле манифеста.
Ответ 5
Например, это запустит XBMC:
adb shell am start -a android.intent.action.MAIN -n org.xbmc.xbmc/android.app.NativeActivity
(Более общие ответы уже опубликованы, но я пропустил хороший пример здесь.)
Ответ 6
Вы также можете найти название текущей активности на экране, используя
adb shell dumpsys window windows | grep 'mCurrentFocus'