Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.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 FusedLocationProvider位置更新的单独类或服务?_Android_Android Gps_Background Service_Android Fusedlocation_Foreground Service - Fatal编程技术网

Android FusedLocationProvider位置更新的单独类或服务?

Android FusedLocationProvider位置更新的单独类或服务?,android,android-gps,background-service,android-fusedlocation,foreground-service,Android,Android Gps,Background Service,Android Fusedlocation,Foreground Service,我目前有一个名为LocationCheck的类 public class SpeedCheck { 在这里,每3秒钟检索一次位置,并一直持续到用户停止为止。要开始检查位置,将在主活动中调用该类: startLoc = new LocationCheck(this); 我想知道的是,代码是否需要在一个服务类中,而不仅仅是一个普通类(就像现在这样)。到目前为止,它还可以正常工作,但我可能误解了服务等的概念,可能没有意识到它可能在很长一段时间内(对于Android开发人员来说是相当新的)在检查过程

我目前有一个名为LocationCheck的类

public class SpeedCheck {
在这里,每3秒钟检索一次位置,并一直持续到用户停止为止。要开始检查位置,将在主活动中调用该类:

startLoc = new LocationCheck(this);
我想知道的是,代码是否需要在一个服务类中,而不仅仅是一个普通类(就像现在这样)。到目前为止,它还可以正常工作,但我可能误解了服务等的概念,可能没有意识到它可能在很长一段时间内(对于Android开发人员来说是相当新的)在检查过程中遇到的问题

我已经查看了位置更新的后台服务,但是使用FusedLocationProvider(我正在使用)只能接收到。这不会有帮助,因为我需要每3秒钟更新一次


如有任何建议,将不胜感激

若您需要在后台不断检查位置,那个么使用服务,否则您只需在活动中使用它即可。当您不再需要该服务时,只需停止该服务,因为如果在后台运行,它将消耗更多的电池。

阅读FusedLocationProvider的文档时,它注意到在后台服务中,“位置每小时只更新几次。”那么,最好使用前台服务吗?这取决于您试图实现的目标。如果您始终需要准确的位置,请使用前台服务。谢谢jatlin,将其全部放在前台运行的服务中,一切都很好。