在我的应用程序中,我在任务栏中收到通知,单击它时会启动我的程序的新活动视图。但是,当我尝试使用停止按钮从此视图中停止我的服务时,没有任何反应。我假设当我按下通知按钮时它没有将我的ACTIVITY与服务联系起来。
首次打开我的应用时,使用下面的意图启动服务:
Intent svc = new Intent(this, StreamService.class);
startService(svc);
然后在服务中:
//Intent passed when notification is selected.
Intent notificationIntent = new Intent(this, HomeActivity.class);
知道如何链接回我的正在运行的服务吗?或者在选择通知时将原始活动/视图重新置于前面?
答案 0 :(得分:2)
您可以附加到通知的意图应具有服务意图,并具有特定操作。在你的服务的onStart方法中,你可以检查它是一个关闭动作,然后你可以调用stopSelf()。
答案 1 :(得分:0)
如果您从通知中打开的活动是与服务相同的应用程序的一部分,那么它就能够停止该服务。尝试使用:
Intent svc = new Intent(this, StreamService.class);
stopService(svc);