From 05246155df5f0c9bab1fe414a28c62b3fe43d1f0 Mon Sep 17 00:00:00 2001 From: Sergey Sozinov <103035673+sergeysozinov@users.noreply.github.com> Date: Tue, 14 May 2024 11:07:12 +0300 Subject: [PATCH 1/8] MBX-3321: added inapp dto for proguard --- sdk/consumer-rules.pro | 1 + 1 file changed, 1 insertion(+) diff --git a/sdk/consumer-rules.pro b/sdk/consumer-rules.pro index b4c7d03aa..9cbd29796 100644 --- a/sdk/consumer-rules.pro +++ b/sdk/consumer-rules.pro @@ -3,5 +3,6 @@ -keepclassmembers enum cloud.mindbox.mobile_sdk.models** { *; } -keep class cloud.mindbox.mobile_sdk.MindboxConfiguration { *; } -keep class cloud.mindbox.mobile_sdk.pushes.PushAction { *; } +-keep class cloud.mindbox.mobile_sdk.inapp.data** { *; } -keep public class * extends android.preference.Preference \ No newline at end of file From 027545332e8aeb3b85af8a43735a248cb1421800 Mon Sep 17 00:00:00 2001 From: Robert Alimbekov Date: Wed, 15 May 2024 12:32:56 +0500 Subject: [PATCH 2/8] migration fix --- .../java/cloud/mindbox/mobile_sdk/utils/MigrationManager.kt | 1 + .../cloud/mindbox/mobile_sdk/utils/MigrationManagerTest.kt | 3 +++ 2 files changed, 4 insertions(+) diff --git a/sdk/src/main/java/cloud/mindbox/mobile_sdk/utils/MigrationManager.kt b/sdk/src/main/java/cloud/mindbox/mobile_sdk/utils/MigrationManager.kt index 3d15c1624..dda43e4e6 100644 --- a/sdk/src/main/java/cloud/mindbox/mobile_sdk/utils/MigrationManager.kt +++ b/sdk/src/main/java/cloud/mindbox/mobile_sdk/utils/MigrationManager.kt @@ -53,6 +53,7 @@ internal class MigrationManager(val context: Context) { gson.toJson(newShownInApps, object : TypeToken>() {}.type) } MindboxPreferences.shownInApps = newMapString + MindboxPreferences.shownInAppIds = "" } } diff --git a/sdk/src/test/java/cloud/mindbox/mobile_sdk/utils/MigrationManagerTest.kt b/sdk/src/test/java/cloud/mindbox/mobile_sdk/utils/MigrationManagerTest.kt index 36dcaff7b..3d38d0d9a 100644 --- a/sdk/src/test/java/cloud/mindbox/mobile_sdk/utils/MigrationManagerTest.kt +++ b/sdk/src/test/java/cloud/mindbox/mobile_sdk/utils/MigrationManagerTest.kt @@ -45,6 +45,9 @@ class MigrationManagerTest { verify(exactly = 1) { MindboxPreferences.shownInApps = expectedNewMapString } + verify(exactly = 1) { + MindboxPreferences.shownInAppIds = "" + } } } \ No newline at end of file From ab7870daf5025f970e6f7b6b3fdfd230cb55c253 Mon Sep 17 00:00:00 2001 From: Kitselyuk Egor Date: Mon, 20 May 2024 17:55:54 +0300 Subject: [PATCH 3/8] MBX-3384: Add resource for default notification color --- .../pushes/PushNotificationManager.kt | 19 ++++++++++++++++++- sdk/src/main/res/values/strings.xml | 1 + 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/sdk/src/main/java/cloud/mindbox/mobile_sdk/pushes/PushNotificationManager.kt b/sdk/src/main/java/cloud/mindbox/mobile_sdk/pushes/PushNotificationManager.kt index b5232350b..e592131f8 100644 --- a/sdk/src/main/java/cloud/mindbox/mobile_sdk/pushes/PushNotificationManager.kt +++ b/sdk/src/main/java/cloud/mindbox/mobile_sdk/pushes/PushNotificationManager.kt @@ -6,19 +6,24 @@ import android.app.Notification.VISIBILITY_PRIVATE import android.content.Context import android.content.Intent import android.graphics.Bitmap +import android.graphics.Color import android.os.Build import androidx.annotation.DrawableRes import androidx.annotation.RequiresApi import androidx.core.app.NotificationCompat import androidx.core.app.NotificationManagerCompat +import androidx.core.content.ContextCompat import cloud.mindbox.mobile_sdk.Mindbox +import cloud.mindbox.mobile_sdk.R import cloud.mindbox.mobile_sdk.logger.MindboxLoggerImpl +import cloud.mindbox.mobile_sdk.logger.mindboxLogI import cloud.mindbox.mobile_sdk.pushes.handler.MessageHandlingState import cloud.mindbox.mobile_sdk.pushes.handler.MindboxMessageHandler import cloud.mindbox.mobile_sdk.pushes.handler.image.ImageRetryStrategy import cloud.mindbox.mobile_sdk.services.BackgroundWorkManager import cloud.mindbox.mobile_sdk.utils.Generator import cloud.mindbox.mobile_sdk.utils.LoggingExceptionHandler +import cloud.mindbox.mobile_sdk.utils.loggingRunCatching import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.withContext import java.net.UnknownHostException @@ -475,6 +480,7 @@ internal object PushNotificationManager { .setAutoCancel(true) .setOnlyAlertOnce(true) .setVisibility(NotificationCompat.VISIBILITY_PRIVATE) + .setIconColor(context) .handlePushClick( context = context, notificationId = notificationId, @@ -659,6 +665,17 @@ internal object PushNotificationManager { ) } + private fun NotificationCompat.Builder.setIconColor(context: Context) = apply { + loggingRunCatching { + ContextCompat.getColor(context, R.color.mindbox_default_notification_color).takeIf { + it != Color.TRANSPARENT + }?.let { defaultColor -> + setColor(defaultColor) + mindboxLogI("Notification color overridden to ${Integer.toHexString(defaultColor)}") + } + } + } + private fun getIntent( context: Context, activity: Class<*>, @@ -677,4 +694,4 @@ internal object PushNotificationManager { `package` = context.packageName } -} +} \ No newline at end of file diff --git a/sdk/src/main/res/values/strings.xml b/sdk/src/main/res/values/strings.xml index ba29a08a9..9db958e0c 100644 --- a/sdk/src/main/res/values/strings.xml +++ b/sdk/src/main/res/values/strings.xml @@ -2,6 +2,7 @@ 3000 + @android:color/transparent