我的应用程序能够跟踪用户,即使应用程序处于后台或被杀死,并将电流lat和long发送到服务器。 我正在使用FusedLocationApi与PendingIntent。我的问题是如果我的应用程序没有在前台运行,我如何更改LocationRequest的间隔?
我想做一些事情,比如抓住firebase提供的PUSH通知然后更改这个间隔,但这是不可能的。
如果我将间隔(setInterval,setFastestInterval和setPriority)设置为最高频率和HIGH_ACCURACY并且仅在服务器中捕获一些此请求,那么会耗尽太多电池,然后当我想获得更多频率时,请抓住所有位置要求?
是否可以避免让客户端(用户智能手机)像服务器那样等待通知,例如firebase?
编辑: 我正在尝试它似乎工作,但我仍然有通信的问题。 我创建了一个服务和2个不同类型的API FusedLocationServices和1个工作,而另一个只是等待来自服务器的信号开始发送位置......而这正是我想知道怎么做的好方法。如何连续收听服务器?有一种方法,比如firebase的onMessageReceived ??
答案 0 :(得分:0)
好吧,我可以像我说的那样处理这个问题,创建2个不同的LocationRequest,一个在第一次使用必要的配置打开应用程序时一直运行,另一个在我实现firebase的onMessageReceived的地方创建。 我必须发送POST数据消息(我使用POSTMAN)以确保调用onMessageReceived,就是这样!