MM-25931 Handle incoming session expired push notification (#4417)

This commit is contained in:
Elias Nahum
2020-06-17 21:30:19 -04:00
committed by GitHub
parent e23c9084b2
commit b85766ec31
7 changed files with 57 additions and 43 deletions

View File

@@ -50,6 +50,7 @@ public class CustomPushNotification extends PushNotification {
private static final String PUSH_TYPE_MESSAGE = "message";
private static final String PUSH_TYPE_CLEAR = "clear";
private static final String PUSH_TYPE_SESSION = "session";
private static final String PUSH_TYPE_UPDATE_BADGE = "update_badge";
private NotificationChannel mHighImportanceChannel;
@@ -163,6 +164,7 @@ public class CustomPushNotification extends PushNotification {
switch(type) {
case PUSH_TYPE_MESSAGE:
case PUSH_TYPE_SESSION:
super.postNotification(notificationId);
break;
case PUSH_TYPE_CLEAR:
@@ -177,8 +179,10 @@ public class CustomPushNotification extends PushNotification {
public void onOpened() {
Bundle data = mNotificationProps.asBundle();
final String channelId = data.getString("channel_id");
channelIdToNotificationCount.remove(channelId);
channelIdToNotification.remove(channelId);
if (channelId != null) {
channelIdToNotificationCount.remove(channelId);
channelIdToNotification.remove(channelId);
}
digestNotification();
}
@@ -222,7 +226,9 @@ public class CustomPushNotification extends PushNotification {
}
String channelId = bundle.getString("channel_id");
userInfoBundle.putString("channel_id", channelId);
if (channelId != null) {
userInfoBundle.putString("channel_id", channelId);
}
notification.addExtras(userInfoBundle);
}
@@ -459,7 +465,8 @@ public class CustomPushNotification extends PushNotification {
private void addNotificationReplyAction(Notification.Builder notification, int notificationId, Bundle bundle) {
String postId = bundle.getString("post_id");
if (postId == null || Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
if (android.text.TextUtils.isEmpty(postId) || Build.VERSION.SDK_INT < Build.VERSION_CODES.N) {
return;
}