如何使用 PUSH 通知之类的方式更改位置间隔

How to change location intervals with something like PUSH notifications

我的应用程序能够跟踪用户,即使该应用程序在后台运行或被终止,并将电流纬度和经度发送到服务器。 为此,我将 FusedLocationApi 与 PendingIntent 结合使用。我的问题是,如果我的应用程序不是 运行 在前台,我该如何更改 LocationRequest 的间隔?

我想做一些事情,比如捕获 firebase 提供的 PUSH 通知,然后更改此间隔,但这是不可能的。

如果我将间隔(setInterval、setFastestInterval 和 setPriority)设置为最频繁并且 HIGH_ACCURACY 并且只在服务器中捕获此请求的一部分,然后在我想获得更多频率,捕获所有位置请求?

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

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

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