我怎么知道从广播接收器和Android调用我的服务的时间?

时间:2013-11-22 18:28:13

标签: java android android-intent android-service android-broadcast

因此,如果用户将其打开,我的应用程序的服务始终在运行。它用USER_PRESENT的广播接收器监听以显示消息。它只能在解锁时显示一条消息。

问题是,当Android内存耗尽并将其杀死,然后重新启动它时,它会再次显示该消息,即使用户还没有解锁他们的设备。有没有办法知道谁叫这项服务?

我使用service.START_NOT_STICKY,但service.START_STICKY会更好地完成这项工作吗?我想我并不完全理解这些差异,但我很确定我想要NOT_STICKY

1 个答案:

答案 0 :(得分:1)

您可以在致电接收器时将action中的intent字段设置为特定字符串,然后在onReceieve中进行检查。

如果它有你的字符串,那么你打电话给它,否则是其他人。