android–Service.onDestroy()在创建后直接调用,无论如何服务都能正常工作

android–Service.onDestroy()在创建后直接调用,无论如何服务都能正常工作,第1张

概述我构建了一个服务,它没有按预期工作,所以我调试了它.在调试期间,我看到从onCreate()返回后直接调用服务的onDestroy()方法.当我注释掉onDestroy()中发生的清理时,服务会完成它的工作,但这不应该是我的解决方案.所以我的问题是,为什么onDestroy()这么早就调用了,为什么服务还在运行?

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

为了您的信息:我已经将IntentService子类化.

谢谢你的帮助.

Binabik

解决方法:

如果您是IntentService的子类,那么您应该在服务的生命周期中使用onHandleIntent(Intent intent).您的服务可能会快速转移到onDestroy,因为您没有onHandleIntent中的代码.虽然没有你的代码我不能肯定地说.

此外,它可能会快速转移到onDestroy,因为IntentService是自动线程的,可能只是启动调用onHandleIntent的工作线程并移动到onDestroy.

总结

以上是内存溢出为你收集整理的android – Service.onDestroy()在创建后直接调用,无论如何服务都能正常工作全部内容,希望文章能够帮你解决android – Service.onDestroy()在创建后直接调用,无论如何服务都能正常工作所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1099672.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存