我有一个后台服务,它会推送通知。当你点击通知时,我的活动被打开,但问题是,再次调用onStartCommand,这可能会调用另一个通知,这意味着我有一个循环。
我正在使用
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
return Service.START_NOT_STICKY;
}
也尝试了Service.START_STICKY而没有效果。
在我的清单中:
<service
android:name=".notification.NotificationService"
android:exported="false"></service>
什么可能导致召回onStartCommand?
答案 0 :(得分:0)
检查您的Activity
代码,听起来像是您意外启动了Service
在某些情况下,这可能会发生
it may be killed by the system if it is under heavy memory pressure.
If this happens, the system will later try to restart the service.
还有可能发生这种情况。如果您旋转设备,Activity
将根据Android official docs Activity被杀死并重新启动。您的Service
将重新启动。阅读文档,节省一些时间和头痛。在此链接Android official docs Activity上,向下滚动2圈,您会看到生命周期的图片。