有没有办法在不修改Android框架的情况下在运行时捕获/拦截应用程序的Intent? 修改Android框架可能需要太多工作。 请帮助我。
要查看发生的意图,请在 shell 中运行 logcat 并将其过滤为仅显示意图,如下所示:
adb logcat | fgrep -我的意图
(您还可以仅针对应用程序的意图添加过滤器,但这会排除系统和其他应用程序发送到您的应用程序的意图。)
这应该显示意图,例如
I/ActivityManager(585):启动活动:Intent {action=android.intent.action...}
要查看系统范围的意图,请尝试意图拦截应用程序。
要查看发送到您自己的类的所有意图,然后
有关所有标准 Intent 操作的信息,请参阅 Intent。
在仪器测试中(在 UI Automator 上尝试过),您可以使用 IntentMonitor:
val intentMonitor = IntentMonitorRegistry.getInstance()
intentMonitor.addIntentCallback { intent ->
// your code here
}