gpt4 book ai didi

java - Stopself() 究竟做了什么?终止服务运行的最佳方式是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:03:33 26 4
gpt4 key购买 nike

我是 android 的初学者,对 java 的经验不多......

我有一个创建 ALARM MANAGER 并启动指向服务的 alarmManager.setRepeating() 的 Activity。

onCreate 中的此服务设置了部分唤醒锁来执行代码的整个执行(该应用程序是为非用户交互而设计的,因此手机始终处于待机状态)。

所有这些都很完美。

有时服务不应该执行整个代码,而是在执行之前退出。所以我使用了 StopSelf 但我有一些疑问:

    Service 中的
  • onDestroy 函数有删除唤醒锁的代码。 StopSelf() 会调用它吗?

  • 无论如何,如果我没有指定任何函数来终止服务,代码执行后什么时候终止?

所以在我的例子中,替换 onDestroy() 而不是 Stopself() 更好吗?非常感谢!

最佳答案

您应该调用 stopSelf () 来停止服务。调用后,Android Framework 会自动调用onDestroy()方法。

实际上,这些onXXX()方法(前缀“on”暗示这些方法是对系统的回调)应该由系统调用,而不是开发者调用。阅读SDK document了解更多详情。

关于java - Stopself() 究竟做了什么?终止服务运行的最佳方式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8338072/

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