要让被杀死的应用程序接收Firebase消息,可以使用Firebase Cloud Messaging(FCM)的数据消息类型。下面是一个使用FCM的解决方案,其中包含一个示例代码:
implementation 'com.google.firebase:firebase-messaging:20.1.0'
public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
super.onMessageReceived(remoteMessage);
// 处理接收到的消息
if (remoteMessage.getData().size() > 0) {
// 获取数据有效载荷
Map data = remoteMessage.getData();
// 处理数据
String message = data.get("message");
String title = data.get("title");
// 在这里执行您的操作,例如显示通知
showNotification(title, message);
}
}
private void showNotification(String title, String message) {
// 创建通知
// ...
}
}
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 注册设备令牌
FirebaseInstanceId.getInstance().getInstanceId().addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(InstanceIdResult instanceIdResult) {
String token = instanceIdResult.getToken();
Log.d("FCM_TOKEN", token);
// 将令牌发送到您的服务器以进行进一步处理
}
});
}
}
通过按照上述步骤,您的被杀死的应用程序将能够接收到来自Firebase的消息,并在收到消息时执行适当的操作。