有没有办法在 中获取或有关应用程序如何启动 ( , , )Intent
的任何其他信息,而不向所有可以午餐应用程序的类添加代码(请记住,我可以'不要覆盖。BroadcastReceiver
Service
Activity
Application
我在界面中找不到任何Context
可以检索任何数据的东西。我考虑过使用类加载器,并以某种方式查询哪些类已加载到内存中。
有没有办法在 中获取或有关应用程序如何启动 ( , , )Intent
的任何其他信息,而不向所有可以午餐应用程序的类添加代码(请记住,我可以'不要覆盖。BroadcastReceiver
Service
Activity
Application
我在界面中找不到任何Context
可以检索任何数据的东西。我考虑过使用类加载器,并以某种方式查询哪些类已加载到内存中。
有没有办法在应用程序中获取 Intent 或有关应用程序如何午餐的任何其他信息(BroadcastReceiver、Service、Activity),而无需向所有可以午餐应用程序的类添加代码(请记住,有我无法覆盖的库类。
在 API 级别 14+ 上,您Application
可以调用registerActivityLifecycleCallbacks()
,之后将为您应用内活动的所有生命周期方法调用它。使用它,您可以调用提供给回调getIntent()
的that。Activity
然而:
这仅适用于 API 级别 14+
这仅适用于活动,不适用于其他组件
由于onNewIntent()
不包含在回调中,因此您只能轻松获取Intent
启动活动的原始数据,而不是任何Intent
导致现有实例返回前台的原始数据(如果这很重要)