【发布时间】:2021-01-28 07:22:53
【问题描述】:
我正在尝试在 andorid 中处理来自 FCM(Firebase Cloud Messaging) 的消息;
这是我的代码
FirebaseMessaging.getInstance().getToken()
.addOnCompleteListener(new OnCompleteListener<String>() {
@Override
public void onComplete(@NonNull Task<String> task) {
if (!task.isSuccessful()) {
Log.w("TAG", "Fetching FCM registration token failed", task.getException());
return;
}
// Get new FCM registration token
String token = task.getResult();
// Log and toast
Log.d("TAG", token);
Toast.makeText(StartActivity.this, token, Toast.LENGTH_SHORT).show();
}
});
FirebaseMessaging.getInstance().setAutoInitEnabled(true);
我已经从 firebase 控制台发送了消息。
但我想处理这些消息。 所以我做了这个文档说https://firebase.google.com/docs/cloud-messaging/android/receive
这是 manifest.xml
<service
android:name="com.google.firebase.messaging.FirebaseMessagingService"
android:exported="false">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
<meta-data
android:name="com.google.firebase.messaging.default_notification_icon"
android:resource="@android:drawable/ic_notification_overlay" />
<meta-data
android:name="com.google.firebase.messaging.default_notification_color"
android:resource="@color/white" />
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT" />
</intent-filter>
</service>
这是我的 FirebaseMessagingService 扩展类
public class MessageService extends FirebaseMessagingService {
private static final String TAG = "MessageService";
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
Toast.makeText(this, "Got it", Toast.LENGTH_SHORT).show();
}
}
但我不知道如何将此 FirebaseMessagingService 类重新注册到 Firebase 消息传递
【问题讨论】:
标签: java android firebase firebase-cloud-messaging