如何通过广播获取意图过滤器和应用程序名称

时间:2014-11-30 13:49:10

标签: android android-intent intentfilter android-broadcast

我需要知道是否有办法获得应用程序(活动)的intent过滤器以及我们在android启动器屏幕上看到的应用程序的实际名称,通过它发送给服务的广播。 / p>

服务通过其广播接收器接收广播,然后它需要知道应用程序的名称及其意图过滤器,以便对该信息进行一些处理。有没有办法通过意图找到这个,或者应用程序是否需要在意图中实际使用putextras?

1 个答案:

答案 0 :(得分:2)

  

有没有办法通过意图找到这个

不是真的,因为Intent没有关于Intent的起点的信息。

  

应用程序是否需要在intent中实际使用putextras?

是的,因为只有广播的发起人知道什么是适合使用的。毕竟,应用可能有零个,一个或多个启动器活动。

欢迎您在getCallingUid()上尝试使用getCallingPid()和/或Binder静态方法,尝试自动派生发件人是谁,但如果有的话可能效果不佳是在设备上使用sharedUserId的多个应用。