在系统启动之前更改从Firebase Cloud Messaging (FCM)收到的通知标题和正文,可以通过以下步骤实现:
<receiver
android:name=".MyFirebaseMessagingReceiver"
android:exported="true">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</receiver>
public class MyFirebaseMessagingService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
// 获取通知标题和正文
String title = remoteMessage.getNotification().getTitle();
String body = remoteMessage.getNotification().getBody();
// 修改通知标题和正文
String modifiedTitle = "修改后的标题";
String modifiedBody = "修改后的正文";
// 创建一个新的通知消息
RemoteMessage.Notification modifiedNotification = new RemoteMessage.Notification.Builder(modifiedTitle, modifiedBody)
.build();
// 替换原始通知消息的标题和正文
remoteMessage = new RemoteMessage.Builder(remoteMessage)
.setNotification(modifiedNotification)
.build();
// 调用父类的方法,继续处理通知消息
super.onMessageReceived(remoteMessage);
}
}
implementation 'com.google.firebase:firebase-messaging:20.1.0'
以上步骤完成后,当应用启动时,如果收到FCM的通知消息,就会触发MyFirebaseMessagingService中的onMessageReceived方法。在该方法中,可以获取到通知的标题和正文,并进行修改。修改后的通知将会在系统启动之前展示给用户。
腾讯云相关产品推荐:
领取专属 10元无门槛券
手把手带您无忧上云