首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当与服务有界的最后一个活动被破坏时,绑定服务是否被破坏?

当与服务有界的最后一个活动被破坏时,绑定服务是否被破坏?
EN

Stack Overflow用户
提问于 2017-04-10 13:41:35
回答 1查看 584关注 0票数 0

我读过官方的android文档,他们说

绑定服务只有在另一个应用程序组件绑定到它时才能运行。

因此,我理解如果我有一个活动,并从该活动中调用一个服务,那么当一个活动被破坏时,服务也被摧毁。

当我按下“后退”按钮并退出应用程序时,这个操作很好。

问题是:当我旋转屏幕时,会调用活动中的onDestroy()回调,而不调用服务中的onDestroy()回调.

考虑到上述官方文件的引用,有人能解释一下为什么会发生这种情况吗?

请注意,我只有一个以该服务为界的活动。

EN

回答 1

Stack Overflow用户

发布于 2017-04-10 13:55:09

服务状态的文档。

服务既可以启动,也可以有绑定到它的连接。在这种情况下,只要服务已经启动,或者有一个或多个带有Context.BIND_AUTO_CREATE标志的连接,系统就会保持服务的运行。一旦这两种情况都不存在,服务的onDestroy()方法就会被调用,服务就会有效地终止。所有清理(停止线程,注销接收者)应在从onDestroy()返回时完成。

因此,如果您解除与您的活动破坏绑定,没有另一个连接绑定到它或直接启动服务,服务也将被销毁。

因此,也要确保解除与服务的绑定。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43324846

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档