是否可以通过adb shell启动活动并接收其响应?

时间:2016-04-21 11:34:49

标签: android shell android-activity activity-manager

我知道您可以通过adb使用以下命令从任何应用启动任何导出的活动:

am start -n com.myapp.test/.TestActivity

使用"am start"命令也可以向活动发送额外的数据(我知道如何做到这一点,这不是我在这里问的问题!)。

然而,我需要知道的是,是否还可以在完成时收到从已启动活动发回的响应数据?

3 个答案:

答案 0 :(得分:1)

<强>更新 您可以将结果打印到logcat。 从-W开始,等待启动完成

然后执行logcat -d

OP已经了解以下内容。我误解了这个问题,保留它以防其他人落在这里

将数据发送到活动
请参考here了解意向规范。

您可以传入键值对。

从规格引用 -e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE>可用于传递键字符串值对。 还有其他选项可以传递不同类型的数据

答案 1 :(得分:0)

尝试以下

am start -e name Arshid -n com.myapp.test/.TestActivity

代码详情:

Intent i = new Intent(Mainctivity.this, TestActivity.class);
i.putExtra("name", "Arshid");

答案 2 :(得分:0)

迂回解决方案:

1,编写一个可以接收intent parameters的工具apk,并将此参数用于startActivityForResult。获取结果时,将其logcat或写入某个文件。

2,使用adb启动此工具-apk使用你想要的任何intent parameters,然后定期检查logcat或文件以获得结果。