Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
后台的Android应用程序_Android_Android Activity_Background_Android Service - Fatal编程技术网

后台的Android应用程序

后台的Android应用程序,android,android-activity,background,android-service,Android,Android Activity,Background,Android Service,我正在android studio中开发一个应用程序,我必须保存设备的位置,我做了一个扩展服务的“locationService”类,因此位置在我的服务器上被分割,服务将在后台。 我已经阅读了android文档,有两种类型的服务(服务和链接服务),我使用链接服务是因为我需要在活动中显示位置数据 问题是,当我关闭应用程序时,服务将终止,并且不会记录位置的更改 如何防止链接服务死亡。谢谢我想你指的是“绑定的”服务,而不是“链接的”服务。当最后一个客户端与绑定的服务断开连接时,绑定的服务将停止运行。为

我正在android studio中开发一个应用程序,我必须保存设备的位置,我做了一个扩展服务的“locationService”类,因此位置在我的服务器上被分割,服务将在后台。 我已经阅读了android文档,有两种类型的服务(服务和链接服务),我使用链接服务是因为我需要在活动中显示位置数据

问题是,当我关闭应用程序时,服务将终止,并且不会记录位置的更改

如何防止链接服务死亡。谢谢

我想你指的是“绑定的”
服务
,而不是“链接的”
服务
。当最后一个客户端与绑定的
服务断开连接时,绑定的
服务将停止运行。为了防止这种情况,您需要调用
startService()
,并确保在
服务中从
onStartCommand()
返回
START\u STICKY


您不需要使用“绑定”的
服务
将数据从
服务
传递到
活动
。另一种方法是让您的
服务
广播数据(通过将数据作为“额外”添加到
意图
并使用
意图
调用
发送广播()
)。然后,您的
活动
可以设置一个
广播接收器
来监听您的
服务所广播的任何数据

请注意这一点。非常感谢。正确的术语是bundle,我已经在我的应用程序中实现了它,它工作正常,现在我想实现另一个功能,在后台我可以启动活动并显示所需的信息,但当我最小化应用程序时(按home键,我不关闭它),我向您发送了新信息,我想把我的应用程序放在前台,显示这些信息。我想您的意思是“绑定”,而不是“捆绑”。当你想把你的应用程序带到前台时,只需为你的应用程序获取一个“启动意图”,然后调用
startActivity()
。它将把你的应用程序带到前台,这样你就可以随心所欲了。再见,谢谢。我已经实现了这个方法,它已经起作用了,现在我遇到了另一个问题,在我的服务中,我有一个布尔变量,它的值是true,从我的应用程序中,我命令它更改为false,但是当我关闭应用程序时,服务发生了一些事情,作为重新启动,我的变量返回到初始值(true)。有一种方式我的服务不会“重新启动”。Android总是可以终止托管你的
服务的进程,然后重新启动它。你不能回避这个问题。你需要想出另一种方法来处理这个问题。您可以将某些内容存储在
SharedReferences
中,必要时也可以存储在其他持久性存储中。谢谢。我已经能够解决应用程序开发过程中出现的所有问题。