因此,如果用户将其打开,我的应用程序的服务始终在运行。它用USER_PRESENT
的广播接收器监听以显示消息。它只能在解锁时显示一条消息。
问题是,当Android内存耗尽并将其杀死,然后重新启动它时,它会再次显示该消息,即使用户还没有解锁他们的设备。有没有办法知道谁叫这项服务?
我使用service.START_NOT_STICKY
,但service.START_STICKY
会更好地完成这项工作吗?我想我并不完全理解这些差异,但我很确定我想要NOT_STICKY
。
答案 0 :(得分:1)
您可以在致电接收器时将action
中的intent
字段设置为特定字符串,然后在onReceieve
中进行检查。
如果它有你的字符串,那么你打电话给它,否则是其他人。