From fe615f022afa535333d89464502ead34b422e581 Mon Sep 17 00:00:00 2001 From: M66B Date: Wed, 29 May 2019 10:16:38 +0200 Subject: [PATCH] Skip importing channels without group --- .../java/eu/faircode/email/ApplicationEx.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ApplicationEx.java b/app/src/main/java/eu/faircode/email/ApplicationEx.java index 5a4cd2ace6..1e1268217b 100644 --- a/app/src/main/java/eu/faircode/email/ApplicationEx.java +++ b/app/src/main/java/eu/faircode/email/ApplicationEx.java @@ -35,6 +35,7 @@ import android.os.Build; import android.os.DeadSystemException; import android.os.Handler; import android.os.RemoteException; +import android.text.TextUtils; import android.view.OrientationEventListener; import android.webkit.CookieManager; @@ -375,6 +376,12 @@ public class ApplicationEx extends Application { for (int c = 0; c < jchannels.length(); c++) { JSONObject jchannel = (JSONObject) jchannels.get(c); + // Legacy + if (!jchannel.has("group") || + jchannel.isNull("group") || + TextUtils.isEmpty(jchannel.getString("group"))) + continue; + String id = jchannel.getString("id"); if (nm.getNotificationChannel(id) == null) { NotificationChannel channel = new NotificationChannel( @@ -382,12 +389,10 @@ public class ApplicationEx extends Application { jchannel.getString("name"), jchannel.getInt("importance")); - if (jchannel.has("group") && !jchannel.isNull("group")) { - String groupName = jchannel.getString("group"); - NotificationChannelGroup group = new NotificationChannelGroup(groupName, groupName); - nm.createNotificationChannelGroup(group); - channel.setGroup(groupName); - } + String groupName = jchannel.getString("group"); + NotificationChannelGroup group = new NotificationChannelGroup(groupName, groupName); + nm.createNotificationChannelGroup(group); + channel.setGroup(groupName); if (jchannel.has("description") && !jchannel.isNull("description")) channel.setDescription(jchannel.getString("description")); @@ -407,7 +412,6 @@ public class ApplicationEx extends Application { channel.enableVibration(jchannel.getBoolean("vibrate")); Log.i("Creating channel=" + channel); - nm.deleteNotificationChannel(id); nm.createNotificationChannel(channel); } }