android - Service.onDestroy() 在创建后直接被调用,无论如何 Service 完成它的工作

标签 android

我构建了一个服务,但它没有按预期工作,所以我调试了它。调试的时候看到服务的onDestroy()方法是在onCreate()返回后直接调用的。当我注释掉 onDestroy() 中发生的清理时,该服务开始工作,但这不应该是我的解决方案。所以我的问题是,为什么这么早调用 onDestroy() 以及为什么服务仍在运行?或者如何防止 onDestroy() 在错误的时间被调用?

供您引用:我已将 IntentService 子类化。

感谢您的帮助。

比比克

最佳答案

如果你继承 IntentService 你应该使用 onHandleIntent(Intent intent)在您的服务生命周期内。您的服务可能会很快转移到 onDestroy,因为您在 onHandleIntent 中没有代码。虽然没有你的代码我不能肯定地说。

它也可能会很快转移到 onDestroy,因为 IntentService 是自动线程化的,可能只是启动调用 onHandleIntent 的工作线程并转移到 onDestroy。

关于android - Service.onDestroy() 在创建后直接被调用,无论如何 Service 完成它的工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7570885/

相关文章:

java - Android http 连接 OkHttp 不工作

Android文本输入,用户可以在其中写入数字和 '/'

java - Firebase 实时数据库 .info/connected False 当它应该是 True

android - Genymotion 模拟器 : Installation error: INSTALL_FAILED_MISSING_SHARED_LIBRARY

android - 403 禁止错误将事件添加到 Google 日历

Android force setProp on read-only properties on emulator

Android SQLite 数据库对比

java - 如何将文件的行号转换为字节偏移量(或使用 BufferedReader 获取每行开头的字节偏移量)?

安卓无法浏览内网

java - 如何循环遍历所有控件并在 Android 中获取其 id 和值?