springboot怎么集成fcm
时间: 2023-10-19 09:21:56 浏览: 225
Firebase Cloud Messaging(FCM)是一种用于向移动设备和 Web 应用程序发送通知消息的服务。Spring Boot 可以通过集成 Firebase Admin SDK 来与 FCM 进行集成,以下是集成步骤:
1. 在 Firebase 控制台中创建一个新项目,并启用 FCM。
2. 添加 Firebase Admin SDK 依赖,例如:
```xml
<dependency>
<groupId>com.google.firebase</groupId>
<artifactId>firebase-admin</artifactId>
<version>7.0.0</version>
</dependency>
```
3. 在应用程序中创建一个 Firebase 服务帐户,并将其下载到本地。
4. 在应用程序中添加 Firebase 服务帐户 JSON 文件的路径。例如,在 application.properties 文件中添加以下配置:
```
firebase.credential.path=/path/to/firebase-service-account.json
```
5. 创建一个 FCM 消息实体类。例如:
```java
public class FcmMessage {
private String token;
private String title;
private String body;
// getters and setters
}
```
6. 创建一个 FCM 服务类。例如:
```java
@Service
public class FcmService {
private final FirebaseApp firebaseApp;
public FcmService(FirebaseApp firebaseApp) {
this.firebaseApp = firebaseApp;
}
public void sendMessage(FcmMessage message) throws FirebaseMessagingException {
Message fcmMessage = Message.builder()
.setToken(message.getToken())
.setNotification(Notification.builder()
.setTitle(message.getTitle())
.setBody(message.getBody())
.build())
.build();
FirebaseMessaging.getInstance(firebaseApp).send(fcmMessage);
}
}
```
7. 在需要发送 FCM 消息的地方,注入 FcmService 并调用 sendMessage 方法即可。例如:
```java
@Service
public class MyService {
private final FcmService fcmService;
public MyService(FcmService fcmService) {
this.fcmService = fcmService;
}
public void sendMessage() throws FirebaseMessagingException {
FcmMessage message = new FcmMessage();
message.setToken("device-token");
message.setTitle("Title");
message.setBody("Body");
fcmService.sendMessage(message);
}
}
```
这样就完成了 Spring Boot 集成 FCM 的步骤。
阅读全文