有没有办法检测应用程序何时被执行(即用户点击应用程序图标时)? 我尝试注册一个类型为Intent.ACTION_MAIN的意图,并使用Intent.CATEGORY_LAUNCHER类别来注册,希望这样可以让我知道何时启动了应用程序。但问题是,我的广播接收器从未被调用。
这是否是非法的意图/类别组合以进行注册?是否有某种方法可以用来确定应用程序启动时机?
这是否是非法的意图/类别组合以进行注册?是否有某种方法可以用来确定应用程序启动时机?
应用程序启动意图不是广播,因此无法注册广播接收器并接收它。正如之前在这里所回答的那样,实际上没有办法检测应用程序的启动。你可能可以编写一个服务来轮询运行的任务,寻找应用程序的任务(使用ActivityManager接口),但这可能是我能想到的最好的方法,而且可能不会很高效。
通常情况下,当应用程序启动时,没有任何广播意图。如果您想要检测的应用程序是您自己的,则可以触发自己的意图广播,但如果不是,则无法检测到。