Android firebase 在收到特定类型的消息时启动服务
Android firebase start a service when a specific type of message is received
我想在收到特殊类型的消息时启动后台服务。为此,我正在执行以下操作
public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
if(remoteMessage.getData().get("message").equals("something"){
//start service
}
}
}
我的问题是,它仅在应用程序处于前台时有效,但当应用程序处于后台时 onMessageReceived
不会触发。而不是它只是显示一个通知。
我想要的是在应用程序处于后台时禁用通知,而是启动服务。
我看过其他答案是这样,他们中的一些人建议我需要发送 data-message
来完成这个。我正在从 firebase 控制台发送数据消息,但它不起作用。
建议只发送 data
- 消息负载。使用 Firebase 通知控制台无法做到这一点。
使用控制台时,发送的消息被视为 notification
消息负载,只有添加 自定义数据 才会包含 data
负载.但是,在那种情况下,它仍然有 notification
和 data
消息。
要仅发送 data
- 消息负载,您需要通过自己的应用服务器或 or cURL[ 自行构建请求=17=]
我想在收到特殊类型的消息时启动后台服务。为此,我正在执行以下操作
public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
if(remoteMessage.getData().get("message").equals("something"){
//start service
}
}
}
我的问题是,它仅在应用程序处于前台时有效,但当应用程序处于后台时 onMessageReceived
不会触发。而不是它只是显示一个通知。
我想要的是在应用程序处于后台时禁用通知,而是启动服务。
我看过其他答案是这样,他们中的一些人建议我需要发送 data-message
来完成这个。我正在从 firebase 控制台发送数据消息,但它不起作用。
建议只发送 data
- 消息负载。使用 Firebase 通知控制台无法做到这一点。
使用控制台时,发送的消息被视为 notification
消息负载,只有添加 自定义数据 才会包含 data
负载.但是,在那种情况下,它仍然有 notification
和 data
消息。
要仅发送 data
- 消息负载,您需要通过自己的应用服务器或