如何通过类似PUSH通知的方式更改位置间隔

问题描述:

即使应用处于后台或终止状态,我的应用能够跟踪用户,并向服务器发送经纬度和长度。 我正在使用FundingLocationApi为PendingIntent。我的问题是我如何更改LocationRequest的时间间隔,如果我的应用程序没有在前台运行?如何通过类似PUSH通知的方式更改位置间隔

我想做一些事情,比如赶上firebase提供的PUSH通知,然后改变这个间隔,但这是不可能的。

,如果我在服务器设置的时间间隔(setInterval的,setFastestInterval和setPriority)最frecuency和HIGH_ACCURACY,只抓一些这方面的请求,然后当我想获得更多的frecuency,抓住它会耗尽太多电池所有的位置请求?

是否有可能避免让客户端(用户智能手机)像一个等待通知的服务器一样工作,比如firebase?

编辑: 我正在尝试它似乎工作,但我仍然有通信问题。 我创建了一个服务和2个不同类型的API FusedLocationServices,此刻1个工作,另一个只是等待来自服务器的信号开始发送位置...而这正是我想知道如何在一个好的办法。如何连续收听服务器?有像firebase的onMessageReceived这样的方法?

+0

你想设置两个不同的时间间隔来获取应用程序运行或死亡时的位置更新吗? –

+0

我想要的是,该应用程序给我的位置有一定的间隔和准确性,但在某些时候,我想改变到最佳位置和更频繁的间隔。像谷歌Android设备管理器。 – MatiRC

+0

你可以先删除位置更新,然后重新注册 –

好的,我可以像我说的那样处理这个问题,创建2个不同的LocationRequest,一个在第一次使用必要的配置打开应用程序时运行的所有时间,另一个在我实现firebase的onMessageReceived时创建。 我必须发送POST数据消息(我使用POSTMAN进行此操作)以确保onMessageReceived被调用,就是这样!