首页 > 解决方案 > 如果我关闭启动它的应用程序,我可以在 Android Studio 中停止服务吗?

问题描述

所以我是 Android 的初学者,我想创建一个后台服务,每 24 小时更换一次壁纸。

我制作的应用程序在主活动中有一个按钮,用于启动服务,另一个按钮用于停止服务。

我想知道的是,如果我启动服务,然后关闭应用程序,如果我重新打开应用程序并按下“关闭服务”按钮,我可以停止服务吗?我很困惑,因为我不知道应用程序是否会知道对活动服务的引用。

标签: androidandroid-studioservicebackground-service

解决方案


这是 Context 类中 stopService(Intent service) 的文档。

“请求停止给定的应用程序服务。如果该服务未运行,则不会发生任何事情。否则它会停止。请注意,对 startService() 的调用不计算在内——无论启动多少次,这都会停止服务”

因此,您只需要从您的活动中调用 stopService(new Intent(this, YourService.class)) ,它将停止 YourService 的所有实例


推荐阅读