在我的应用中,当我发送消息时,我没有收到消息是在另一个帐户上发送的通知。我是新手,所以不确定我做错了什么。我知道可能存在关于如何加载数据或类似问题的问题,但我不确定问题是什么。我已经尝试了其他解决方案,但我发现似乎没有任何效果。任何帮助将不胜感激。更新:我能够从firebase发送消息到我的手机,并弹出通知。我现在唯一的问题是如何让这两个用户之间的工作。
public class MyFirebaseMessagingService extends FirebaseMessagingService {
private static final String TAG = "MyFirebaseMsgService";
/**
* Called when message is received.
*
* @param remoteMessage Object representing the message received from Firebase Cloud Messaging.
*/
@Override
public void onMessageReceived(RemoteMessage remoteMessage) {
Log.d(TAG, "From: " + remoteMessage.getFrom());
// Check if message contains a data payload.
if (remoteMessage.getData().size() > 0) {
Log.d(TAG, "Message data payload: " + remoteMessage.getData());
String title = remoteMessage.getData().get("title");
String message = remoteMessage.getData().get("text");
String username = remoteMessage.getData().get("username");
String uid = remoteMessage.getData().get("uid");
String fcmToken = remoteMessage.getData().get("fcm_token");
// Don't show notification if chat activity is open.
if (!FirebaseChatMainApp.isChatActivityOpen()) {
sendNotification(title,
message,
username,
uid,
fcmToken);
Log.i("MESSAGE","Goes here");
} else {
EventBus.getDefault().post(new PushNotificationEvent(title,
message,
username,
uid,
fcmToken));
Log.i("MESSAGE","Goes here");
}
}
}
/**
* Create and show a simple notification containing the received FCM message.
*/
private void sendNotification(String title,
String message,
String receiver,
String receiverUid,
String firebaseToken) {
Intent intent = new Intent(this, ChatActivity.class);
intent.putExtra(Constants.ARG_RECEIVER, receiver);
intent.putExtra(Constants.ARG_RECEIVER_UID, receiverUid);
intent.putExtra(Constants.ARG_FIREBASE_TOKEN, firebaseToken);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent,
PendingIntent.FLAG_ONE_SHOT);
Uri defaultSoundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_messaging)
.setContentTitle(title)
.setContentText(message)
.setAutoCancel(true)
.setSound(defaultSoundUri)
.setContentIntent(pendingIntent);
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0, notificationBuilder.build());
}
@Override
public void handleIntent(Intent intent) {
super.handleIntent(intent);
}
}