我需要知道是否有办法获得应用程序(活动)的intent过滤器以及我们在android启动器屏幕上看到的应用程序的实际名称,通过它发送给服务的广播。 / p>
服务通过其广播接收器接收广播,然后它需要知道应用程序的名称及其意图过滤器,以便对该信息进行一些处理。有没有办法通过意图找到这个,或者应用程序是否需要在意图中实际使用putextras?
答案 0 :(得分:2)
有没有办法通过意图找到这个
不是真的,因为Intent
没有关于Intent
的起点的信息。
应用程序是否需要在intent中实际使用putextras?
是的,因为只有广播的发起人知道什么是适合使用的。毕竟,应用可能有零个,一个或多个启动器活动。
欢迎您在getCallingUid()
上尝试使用getCallingPid()
和/或Binder
静态方法,尝试自动派生发件人是谁,但如果有的话可能效果不佳是在设备上使用sharedUserId
的多个应用。