小编JJa*_*kJi的帖子

如何通过ADB获取当前正在运行的活动的额外内容

我有一个关于使用ADB的问题.

我知道这个命令:

adb shell dumpsys activity
Run Code Online (Sandbox Code Playgroud)

可以显示当前在设备上运行的所有活动.

但我注意到,有时,意图看起来像这样:

Intent { ...some_intent/activity_name.... (has extras) }
Run Code Online (Sandbox Code Playgroud)

我知道额外的意思是活动已经开始传递给它的某些参数(我可能在这里错了,请纠正我,如果我).

所以我的问题是,如何通过ADB获得意图/活动的额外内容?

我需要这个的原因是因为我试图通过ADB命令启动apk(安装在手机上),例如:

adb shell "su -c 'am start -n com.package.name/.ActivityName'"
Run Code Online (Sandbox Code Playgroud)

这工作并启动应用程序.该应用程序有一个开始屏幕(比如我们称之为HomeActivity),您必须单击一个按钮并进行一些选择(比如SelectionActivity),它将转到另一个屏幕(比如ActionActivity).我希望能够启动apk并让它直接进入ActionActivity.

如果我尝试使用am start命令启动ActionActivity,应用程序将崩溃,我假设这是因为它需要SelectionActivity屏幕中的参数.

这就是为什么我要查看ActionActivity屏幕实际获得的"额外"或参数是什么,以便我可以执行以下操作:

adb shell "su -c 'am start -n com.package.name/.ActionActivity -e param1 val1 -e param2 val2'"
Run Code Online (Sandbox Code Playgroud)

希望我的问题很明确.

如果我在某个地方犯了错误,请纠正我.

提前致谢!

android adb android-intent android-activity

8
推荐指数
1
解决办法
4098
查看次数

使用ADB检查飞行模式是否已打开?

我知道我们可以做到以下几点:

adb shell am start -a android.settings.AIRPLANE_MODE_SETTINGS
adb shell input keyevent 19 ; adb shell input keyevent 23
Run Code Online (Sandbox Code Playgroud)

在Android设备上打开/关闭飞行模式.

但是,无论如何都要检查当前设备是否通过ADB打开飞机模式?

我问这个是因为上面的两行代码将切换飞行模式而不知道它是打开还是关闭.但我需要一种方法来确保飞机模式确实通过亚行开启/关闭.

请帮帮我!

提前致谢

android adb

5
推荐指数
2
解决办法
2万
查看次数

标签 统计

adb ×2

android ×2

android-activity ×1

android-intent ×1