我目前正在尝试在Android上的两台设备之间制作个人定位应用程序。
这个概念很简单:我把我的应用程序安装在我的手机和我妻子的手机上,每个人都可以定位对方。(此申请仅限个人使用(
为了实现这一点,我想到了使用FCM发送通知。电话A向电话B发送请求,电话B通过接收消息的服务进行监听。当电话B收到请求时,它通过FCM返回GPS坐标,以便电话A在地图上显示这些坐标。(我也可以将坐标存储在数据库中,而不是发回FCM消息(
但FCM的文件显示:"当您的应用程序处于后台时,系统托盘中会显示通知消息,并且不会调用onMessageReceived。对于具有数据有效载荷的通知消息,通知消息显示在系统托盘中,并且可以从用户点击通知时启动的意图中检索包括在通知消息中的数据">
当然,这减少了范围,因为它迫使接收通知的电话的用户点击它来激活服务的动作。FCM还能通过其他渠道满足我的需求吗?是否存在其他选项来发送";请求";换一部手机?
(我知道PlayStore上存在这种应用程序,但我想尝试让我的应用程序:-(
您引用的文档中该部分的关键词是通知消息。Firebase云消息支持两种类型的消息:
- 通知消息,当应用程序处于非活动状态时,系统会显示这些消息,并在应用程序处于活动状态时发送给您的应用程序代码
- 数据消息,这些消息总是传递给您的应用程序代码
听起来你想在这个用例中使用数据消息