admin管理员组

文章数量:1573092

手机连接电脑,开启USB调试,【不懂去百度】

windows下载ADB,设置环境变量,然后打开cmd,【不懂去百度】

//获取手机上当前正在运行的APP的包名+Activity名
ADB命令:

adb shell dumpsys window | findstr mCurrentFocus


执行结果:

mCurrentFocus=Window{d9a816a u0 com.xxx.xxx/com.xxx.xxx.ui.activity.TabActivity}


其中com.xxx.xxx就是包名,

但是因为很多APP启动后显示的页面,并不是入口Activity,
因此,上面的结果中【com.xxx.xxx/com.xxx.xxx.ui.activity.TabActivity】并不一定能用来启动APP,
很多APP有个专门的过渡启动页,用来判断是否已经登录,登录了显示主页,没登录显示登录页。
ADB启动APP命令:

adb shell am start com.xxx.xxx/com.xxx.xxx.starActivity

【这个starActivity就是APP的启动入口Activity】

下面是找到这个APP入口Activity的命令:

adb shell dumpsys package com.xxx.xxx


执行这个命令,会显示一大堆信息,其中前面几行信息就是入口信息,排在最前面,但是信息太多,要翻页很久,
入口信息像这样:

b70c46b com.xxx.xxx/.ui.activity.LoadingActivity filter 9e6bc8


根据结果调整命令,加入搜索条件:findstr \/ | findstr filter
调整后的命令:

adb shell dumpsys package com.xxx.xxx  | findstr \/ |findstr filter


这样就找到了4行信息,搜索条件包括两个条件【一:有/字符的,二:有filter字符串的】
如下,其中第一行就是我们需要的入口Activity信息:

b70c46b com.xxx.xxx/.ui.activity.LoadingActivity filter 9e6bc8
cfb0461 com.xxx.xxx/com.hyphenate.chat.EMMonitorReceiver filter 63c9b86【这个APP引用了其它的包,这里是其它包入口信息】
cfb0461 com.xxx.xxx/com.hyphenate.chat.EMMonitorReceiver filter ed53c47【这个APP引用了其它的包,这里是其它包入口信息】
cfb0461 com.xxx.xxx/com.hyphenate.chat.EMMonitorReceiver filter ed53c47【这个APP引用了其它的包,这里是其它包入口信息】

结论:
一、先用

adb shell dumpsys window | findstr mCurrentFocus

命令找到【当前连接电脑的手机正在运行的APP】的包名
二、再用

adb shell dumpsys package 包名  | findstr \/ |findstr filter

命令找到入口Activity。

三、使用

adb shell am start com.xxx.xxx/com.xxx.xxx.starActivity

启动APP

2024-4-16补充:

有些傻逼APP,它会隐藏很多Activity的权限,用它定义的MainActivity去启动app会得到权限不足的回答。

这样的APP,必须找到它的启动Activity

办法是当启动的时候,不停的用命令提示符使用adb命令

adb shell dumpsys activity top | findstr ACTIVITY

去找到启动页面,这里特别点名:番茄免费小说,没错,说的就是你,傻逼APP。

傻逼APP在AndroidManifest.xml清单文件中,首页的清单设置中没有添加
<intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
这个代码,会导致使用Main启动APP报权限错误【就是如下图这个错误】,启动不了它的主Activity。

只能找到启动Activity,才能启动APP。

找到启动Activity以后,使用启动Activity去启动APP

本文标签: 手机ADBapp