From f0c7da7cd61b686950aa6225e7411e194a02dff2 Mon Sep 17 00:00:00 2001 From: tobiasKaminsky Date: Tue, 18 Mar 2025 10:26:23 +0100 Subject: [PATCH 1/2] fix pendingIntent Signed-off-by: tobiasKaminsky --- .../it/niedermann/owncloud/notes/shared/util/WidgetUtil.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/src/main/java/it/niedermann/owncloud/notes/shared/util/WidgetUtil.java b/app/src/main/java/it/niedermann/owncloud/notes/shared/util/WidgetUtil.java index 2a23e77c6..0db7cd89a 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/shared/util/WidgetUtil.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/shared/util/WidgetUtil.java @@ -28,6 +28,9 @@ private WidgetUtil() { * @return {@param flags} | {@link PendingIntent#FLAG_MUTABLE} */ public static int pendingIntentFlagCompat(int flags) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) { + return flags | PendingIntent.FLAG_IMMUTABLE; + } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) { return flags | PendingIntent.FLAG_MUTABLE; } From 629c004b6ab3a714a9ea2fce0a14ce14c647def1 Mon Sep 17 00:00:00 2001 From: alperozturk Date: Wed, 2 Apr 2025 15:23:06 +0200 Subject: [PATCH 2/2] update doc Signed-off-by: alperozturk --- .../owncloud/notes/shared/util/WidgetUtil.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/it/niedermann/owncloud/notes/shared/util/WidgetUtil.java b/app/src/main/java/it/niedermann/owncloud/notes/shared/util/WidgetUtil.java index 0db7cd89a..2545fd2df 100644 --- a/app/src/main/java/it/niedermann/owncloud/notes/shared/util/WidgetUtil.java +++ b/app/src/main/java/it/niedermann/owncloud/notes/shared/util/WidgetUtil.java @@ -16,16 +16,16 @@ private WidgetUtil() { } /** - * Android S requires either {@link PendingIntent#FLAG_MUTABLE} or - * {@link PendingIntent#FLAG_IMMUTABLE} to be set on a {@link PendingIntent}. - * This is enforced by Android and will lead to an app crash if neither of those flags is - * present. - * To keep the app working, this compatibility method can be used to add the - * {@link PendingIntent#FLAG_MUTABLE} flag on Android S and higher to restore the behavior of - * older SDK versions. + * Android 14 (API 34) and above require FLAG_IMMUTABLE * - * @param flags wanted flags for {@link PendingIntent} - * @return {@param flags} | {@link PendingIntent#FLAG_MUTABLE} + *

+ * Android 12 (API 31) and above allow FLAG_MUTABLE + * + *

+ * Ensures compatibility with different Android API levels by setting appropriate flags for a PendingIntent. + * + * @param flags The original flags to be used for the PendingIntent. + * @return The modified flags with compatibility adjustments based on the Android API level. */ public static int pendingIntentFlagCompat(int flags) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {