我正在 android studio 中开发一个应用程序,我必须保存设备的位置,我做了一个扩展服务的“locationService”类,所以位置在我的服务器上被分割,服务将在后台. 我已经阅读了android文档并且有两种类型的服务(服务和链接服务),我使用链接服务是因为我需要在 Activity 中显示位置数据。
问题是当我关闭应用程序时,服务停止并且不记录位置的变化。
如何防止链接服务死亡。谢谢
最佳答案
我假设您指的是“绑定(bind)”服务
,而不是“链接”服务
。当最后一个客户端与其断开连接时,绑定(bind)的 Service
将停止运行。为防止出现这种情况,您需要调用 startService()
并确保在 Service< 中从
.onStartCommand()
返回 START_STICKY
/
您不需要使用“绑定(bind)”Service
来将数据从 Service
传递到 Activity
。另一种方法是让您的 Service
广播数据(通过将数据作为“额外”添加到 Intent
并调用 sendBroadcast()
Intent
)。然后,您的 Activity
可以设置一个 BroadcastReceiver
来监听您的 Service
的任何数据广播。
关于Android 应用程序在后台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46459395/