gpt4 book ai didi

android - 如何获取正在运行的服务并从 Activity 中手动停止它?

转载 作者:行者123 更新时间:2023-11-30 01:57:15 26 4
gpt4 key购买 nike

在我的应用程序中,我创建了一个服务,假设 MyService,我想做的是,如果我不在应用程序中,我只想运行它。因此,当我打开我的应用程序时,我想检查 MyService 的任何实例是否正在运行/存在。如果发现我想阻止它。当我退出时,我的应用程序将使用 Intent 再次启动该服务。

我发现的大多数搜索结果都建议使用 stopService() 方法。但是只有当我有指向该服务的 Intent 时我才能使用它,对吗?但到目前为止,我发现的关于“搜索”过程的唯一解决方案建议使用 getSystemService(Context.ACTIVITY_SERVICE)。但是我通过它只得到一个 RunningServiceInfo 对象。我如何使用此对象停止正在运行的服务?

如果这不可能,那么完成我在这里尝试做的事情的最有效方法是什么?

最佳答案

无论服务是否运行,您都可以调用stopService(),因此您无需检查它是否正在运行。如果是,它将被停止并且 stopService() 返回 true;否则 stopService() 返回 false(但听起来您并不关心返回值)。

参见 documentation for stopService() .

getSystemService() 对于查找您自己的服务有用,它用于查找系统级服务,如 ActivityManager 或 AlarmManager。

关于android - 如何获取正在运行的服务并从 Activity 中手动停止它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32027213/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com