Java GPS在使用LocationManager时关闭

Java GPS在使用LocationManager时关闭,java,android,gps,location,fusedlocationproviderapi,Java,Android,Gps,Location,Fusedlocationproviderapi,我们开发了C.R.M.软件,在后台提供位置跟踪功能。为了实现这一功能,我使用了android OREO或更高版本android的前台服务 我们正在尝试使用locationmanager获取用户的当前位置,并附加了onlocationchage侦听器。我们正在成功地获取服务中的数据,而不是将这些数据存储在SQLite中 扭曲之处在于,当我们关闭应用程序或将应用程序放在后台时,服务运行良好,但位置管理器无法获得经度和纬度,一段时间后可能需要2-3分钟。我们也检查过了。如果服务在后台运行或被终止,但服

我们开发了C.R.M.软件,在后台提供位置跟踪功能。为了实现这一功能,我使用了android OREO或更高版本android的前台服务

我们正在尝试使用
locationmanager
获取用户的当前位置,并附加了
onlocationchage
侦听器。我们正在成功地获取服务中的数据,而不是将这些数据存储在SQLite中

扭曲之处在于,当我们关闭应用程序或将应用程序放在后台时,服务运行良好,但位置管理器无法获得经度和纬度,一段时间后可能需要2-3分钟。我们也检查过了。如果服务在后台运行或被终止,但服务在后台运行并在logcat中打印日志。我们已经设置了
CounteDownTimer
来打印登录
LogCat
。我们还试图保持应用程序的开放性,而不是被杀死,甚至在后台也不被杀死。同样的,LocationManager在一段时间后并没有得到纬度和经度。应用程序在我们的手机主屏幕上运行

以下是我们尝试过的东西:-

  • 我尝试过GPS提供商(一段时间后不工作)
  • 我尝试过网络提供商(一段时间后不工作)
  • 我尝试过被动提供者(一段时间后不工作)
  • 我尝试过谷歌融合定位,但它甚至没有得到位置数据
  • 我已将
    WakeLock
    投入使用,以便CPU不会进入空闲模式(尝试部分和完全唤醒锁定)
注:-

  • 我要求的位置为给定的间隔和给定的距离。我在办公室和办公室外都做过尝试,但过了一段时间后我们没有得到数据。我确信给定的距离正在被覆盖

提前谢谢,我不能出示我的代码,原因是我们公司不允许在任何平台上发布公司代码。抱歉….

您需要在前台运行该服务。作为其中的一部分,您需要在您的清单中请求许可,以及一些其他事项。我最近跟进了一个类似的问题