我有一个启动服务的活动。当活动关闭时,我希望服务继续在后台运行。我在这里有几个问题。
关闭活动屏幕会导致活动实际停止吗?还是我需要强行阻止它才能停止?
如果关闭屏幕确实导致它停止,那么我认为我需要使用startService
开始它。那是对的吗?如果是这种情况,是否有办法在下次活动启动时获取正在运行的服务的句柄?如果不是这种情况,那么我可以绑定到该服务。
当你的Activity
屏幕上不再可见,它已停止。停止Activity
绑定到一个Service
并没有停止Service
。但是,您需要确保解除绑定Service
当你的Activity
calls onDestroy()
确保你没有任何悬空的处理程序之类的。
您可以重新绑定到正在运行的Service
和第一次一样。发送一个Intent
开始一个Service
已经运行的不会创建它的第二个实例,所以这是安全的。
一个开始的好方法Service
就像你所描述的那样,使用Context.BIND_AUTO_CREATE
你的电话的论点bindService()
.
所有这些的详细信息可以在关于绑定服务的 Android 文档 http://developer.android.com/guide/topics/fundamentals/bound-services.html。一开始可能会有点混乱。密切关注教程代码,因为听起来您的问题很好地映射到了他们提供的示例上。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)