Android adb启动任意app的几种方式

使用adb启动应用程序主要有两种方式:一种是已知应用程序的包名和主Activity,另一种是不知道应用程序的包名和主Activity。

已知应用程序的包名和主Activity

在这种情况下,我们可以通过输入特定的adb命令来启动应用程序。具体步骤如下:

(1)确保你的PC和Android设备已经连接,可以通过cmd进入命令行,输入adb devices来确认设备是否已经连接。

(2)在命令行中输入adb shell am start +包名/.Activity来启动应用程序,例如:adb shell am start com.android.settings/.HWSettings。

(3)或者,你也可以使用adb shell am start -W -n 包名/.Activity来启动应用程序,例如:adb shell am start -W -n com.android.settings/.Settings$ApnEditorActivity。

如何获取启动页activity

启动页activity指App启动的第一个activity,介绍几种查看启动页activity的方法:

方法一:问开发,最有效的获取方式

方法二:dumpsys package 包名,前提是知道包名

1、adb shell

2、dumpsys package 包名

查找关键词"android.intent.action.MAIN"即可检索到启动页activity:/.activity.HomeActivity

方法三:monkey,前提是知道包名

adb shell -p 包名 -v -v -v 1

执行结果有一个cmp参数,后面就是我们的启动页activity

相关推荐
逐光老顽童13 小时前
Java 与 Kotlin 混合开发避坑指南:30 个真实案例实录
android·kotlin
爱勇宝1 天前
鸿蒙生态的下半场:开发者不只要能开发,还要能赚钱
android·前端·程序员
Yeyu1 天前
刷新一帧的艺术:invalidate / postInvalidate / postInvalidateOnAnimation全解析
android
潘潘潘1 天前
Android OTA 升级原理和流程介绍
android
plainGeekDev1 天前
null 判断 → Kotlin 可空类型
android·java·kotlin
plainGeekDev1 天前
getter/setter → Kotlin 属性
android·java·kotlin
YXL1111YXL2 天前
Handler 消息回收与协程异步执行的时序陷阱
android
恋猫de小郭2 天前
KMP / CMP 鸿蒙版本 Beta 发布,他有什么特别之处?
android·前端·flutter
三少爷的鞋2 天前
Android 协程并发控制:别动线程池,控制好并发语义就够了
android
weiggle2 天前
第七篇:状态提升与单向数据流——架构设计的核心
android