У меня есть эта проблема:
Отправка push-сообщения через панель PHP с помощью action_click .Активность открывается, но на ней белый экран.
Как мне перенести туда данные: Заголовок, Сообщение, Изображение (если есть, если нет, то по умолчанию)
Заранее большое спасибо, если вы можете дать мне рабочую версию, как это реализовать.
Извините за мой очень плохой английский, я русский.
public class MyFirebaseMessagingService extends FirebaseMessagingService {
private static final String TAG = "MyFirebaseMsgingService";
private static final String TITLE = "title";
private static final String EMPTY = "";
private static final String MESSAGE = "message";
private static final String IMAGE = "image";
private static final String ACTION = "action";
private static final String DATA = "data";
private static final String ACTION_DESTINATION = "action_destination";
@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());
Map<String, String> data = remoteMessage.getData();
handleData(data);
} else if (remoteMessage.getNotification() != null) {
Log.d(TAG, "Message Notification Body: " + remoteMessage.getNotification().getBody());
handleNotification(remoteMessage.getNotification());
}// Check if message contains a notification payload.
}
private void handleNotification(RemoteMessage.Notification RemoteMsgNotification) {
String message = RemoteMsgNotification.getBody();
String title = RemoteMsgNotification.getTitle();
NotificationVO notificationVO = new NotificationVO();
notificationVO.setTitle(title);
notificationVO.setMessage(message);
Intent resultIntent = new Intent(getApplicationContext(), PushTest.class);
NotificationUtils notificationUtils = new NotificationUtils(getApplicationContext());
notificationUtils.displayNotification(notificationVO, resultIntent);
notificationUtils.playNotificationSound();
}
private void handleData(Map<String, String> data) {
String title = data.get(TITLE);
String message = data.get(MESSAGE);
String iconUrl = data.get(IMAGE);
String action = data.get(ACTION);
String actionDestination = data.get(ACTION_DESTINATION);
NotificationVO notificationVO = new NotificationVO();
notificationVO.setTitle(title);
notificationVO.setMessage(message);
notificationVO.setIconUrl(iconUrl);
notificationVO.setAction(action);
notificationVO.setActionDestination(actionDestination);
Intent resultIntent = new Intent(getApplicationContext(), PushTest.class);
NotificationUtils notificationUtils = new NotificationUtils(getApplicationContext());
notificationUtils.displayNotification(notificationVO, resultIntent);
notificationUtils.playNotificationSound();
}
}
Как я могу отобразить данные в моей деятельности?Активность откройте через action_click как PushTest и увидите там только белый экран