From 60e6841578a1b2752638d83aaab8c772360d7057 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Thu, 2 May 2024 10:58:06 +0200 Subject: [PATCH] ignore quickLog startService exception --- .../services/UnifiedPushDistributor.java | 38 ++++++++++++------- .../conversations/utils/Compatibility.java | 10 +---- 2 files changed, 27 insertions(+), 21 deletions(-) diff --git a/src/main/java/eu/siacs/conversations/services/UnifiedPushDistributor.java b/src/main/java/eu/siacs/conversations/services/UnifiedPushDistributor.java index b47a61a53..f51de2432 100644 --- a/src/main/java/eu/siacs/conversations/services/UnifiedPushDistributor.java +++ b/src/main/java/eu/siacs/conversations/services/UnifiedPushDistributor.java @@ -35,9 +35,9 @@ public class UnifiedPushDistributor extends BroadcastReceiver { public static final String ACTION_REGISTER = "org.unifiedpush.android.distributor.REGISTER"; public static final String ACTION_UNREGISTER = "org.unifiedpush.android.distributor.UNREGISTER"; - // connector actions (these are actions used for distributor->connector broadcasts) - public static final String ACTION_UNREGISTERED = "org.unifiedpush.android.connector.UNREGISTERED"; + public static final String ACTION_UNREGISTERED = + "org.unifiedpush.android.connector.UNREGISTERED"; public static final String ACTION_BYTE_MESSAGE = "org.unifiedpush.android.distributor.feature.BYTES_MESSAGE"; public static final String ACTION_REGISTRATION_FAILED = @@ -69,7 +69,7 @@ public class UnifiedPushDistributor extends BroadcastReceiver { final Parcelable appVerification = intent.getParcelableExtra("app"); if (appVerification instanceof PendingIntent pendingIntent) { application = pendingIntent.getIntentSender().getCreatorPackage(); - Log.d(Config.LOGTAG,"received application name via pending intent "+ application); + Log.d(Config.LOGTAG, "received application name via pending intent " + application); } else { application = intent.getStringExtra("application"); } @@ -79,10 +79,10 @@ public class UnifiedPushDistributor extends BroadcastReceiver { switch (Strings.nullToEmpty(action)) { case ACTION_REGISTER -> register(context, application, instance, features, messenger); case ACTION_UNREGISTER -> unregister(context, instance); - case Intent.ACTION_PACKAGE_FULLY_REMOVED -> - unregisterApplication(context, intent.getData()); - default -> - Log.d(Config.LOGTAG, "UnifiedPushDistributor received unknown action " + action); + case Intent.ACTION_PACKAGE_FULLY_REMOVED -> unregisterApplication( + context, intent.getData()); + default -> Log.d( + Config.LOGTAG, "UnifiedPushDistributor received unknown action " + action); } } @@ -111,7 +111,11 @@ public class UnifiedPushDistributor extends BroadcastReceiver { Log.d( Config.LOGTAG, "successfully created UnifiedPush entry. waking up XmppConnectionService"); - quickLog(context, String.format("successfully registered %s (token = %s) for UnifiedPushed", application, instance)); + quickLog( + context, + String.format( + "successfully registered %s (token = %s) for UnifiedPushed", + application, instance)); final Intent serviceIntent = new Intent(context, XmppConnectionService.class); serviceIntent.setAction(XmppConnectionService.ACTION_RENEW_UNIFIED_PUSH_ENDPOINTS); serviceIntent.putExtra("instance", instance); @@ -140,7 +144,7 @@ public class UnifiedPushDistributor extends BroadcastReceiver { } } else { if (messenger instanceof Messenger m) { - sendRegistrationFailed(m,"Your application is not registered to receive messages"); + sendRegistrationFailed(m, "Your application is not registered to receive messages"); } Log.d( Config.LOGTAG, @@ -157,7 +161,7 @@ public class UnifiedPushDistributor extends BroadcastReceiver { try { messenger.send(message); } catch (final RemoteException e) { - Log.d(Config.LOGTAG,"unable to tell messenger of failed registration",e); + Log.d(Config.LOGTAG, "unable to tell messenger of failed registration", e); } } @@ -177,7 +181,11 @@ public class UnifiedPushDistributor extends BroadcastReceiver { } final UnifiedPushDatabase unifiedPushDatabase = UnifiedPushDatabase.getInstance(context); if (unifiedPushDatabase.deleteInstance(instance)) { - quickLog(context, String.format("successfully unregistered token %s from UnifiedPushed (application requested unregister)", instance)); + quickLog( + context, + String.format( + "successfully unregistered token %s from UnifiedPushed (application requested unregister)", + instance)); Log.d(Config.LOGTAG, "successfully removed " + instance + " from UnifiedPush"); // TODO send UNREGISTERED broadcast back to app?! } @@ -192,7 +200,11 @@ public class UnifiedPushDistributor extends BroadcastReceiver { Log.d(Config.LOGTAG, "app " + application + " has been removed from the system"); final UnifiedPushDatabase database = UnifiedPushDatabase.getInstance(context); if (database.deleteApplication(application)) { - quickLog(context, String.format("successfully removed %s from UnifiedPushed (ACTION_PACKAGE_FULLY_REMOVED)", application)); + quickLog( + context, + String.format( + "successfully removed %s from UnifiedPushed (ACTION_PACKAGE_FULLY_REMOVED)", + application)); Log.d(Config.LOGTAG, "successfully removed " + application + " from UnifiedPush"); } } @@ -210,6 +222,6 @@ public class UnifiedPushDistributor extends BroadcastReceiver { final Intent intent = new Intent(context, XmppConnectionService.class); intent.setAction(XmppConnectionService.ACTION_QUICK_LOG); intent.putExtra("message", message); - context.startService(intent); + Compatibility.startService(context, intent); } } diff --git a/src/main/java/eu/siacs/conversations/utils/Compatibility.java b/src/main/java/eu/siacs/conversations/utils/Compatibility.java index a6e91593e..eaf89d121 100644 --- a/src/main/java/eu/siacs/conversations/utils/Compatibility.java +++ b/src/main/java/eu/siacs/conversations/utils/Compatibility.java @@ -12,8 +12,6 @@ import android.content.pm.PackageManager; import android.net.ConnectivityManager; import android.os.Build; import android.os.Bundle; -import android.preference.Preference; -import android.preference.PreferenceCategory; import android.preference.PreferenceManager; import android.util.Log; @@ -26,10 +24,6 @@ import eu.siacs.conversations.AppSettings; import eu.siacs.conversations.Config; import eu.siacs.conversations.R; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - public class Compatibility { public static boolean hasStoragePermission(final Context context) { @@ -100,7 +94,7 @@ public class Compatibility { } - public static void startService(Context context, Intent intent) { + public static void startService(final Context context, final Intent intent) { try { if (Compatibility.runsAndTargetsTwentySix(context)) { intent.putExtra(EXTRA_NEEDS_FOREGROUND_SERVICE, true); @@ -108,7 +102,7 @@ public class Compatibility { } else { context.startService(intent); } - } catch (RuntimeException e) { + } catch (final RuntimeException e) { Log.d( Config.LOGTAG, context.getClass().getSimpleName() + " was unable to start service");