From 2405b98b05ac6ea0a00c862d0004f46ea13e15bc Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Thu, 20 Aug 2026 23:48:16 -0700 Subject: [PATCH] fix(android): explicitly target notification intents (#127055) --- .../java/ai/openclaw/app/ConversationNotifications.kt | 6 ++++-- .../java/ai/openclaw/app/ConversationNotificationsTest.kt | 8 ++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/android/app/src/main/java/ai/openclaw/app/ConversationNotifications.kt b/apps/android/app/src/main/java/ai/openclaw/app/ConversationNotifications.kt index b9357f7d8cb4..229dad2c7c61 100644 --- a/apps/android/app/src/main/java/ai/openclaw/app/ConversationNotifications.kt +++ b/apps/android/app/src/main/java/ai/openclaw/app/ConversationNotifications.kt @@ -109,7 +109,8 @@ internal fun conversationNotificationLaunchIntent( context: Context, target: ConversationNotificationTarget, ): Intent = - Intent(context, ConversationNotificationLaunchActivity::class.java) + Intent() + .setClass(context, ConversationNotificationLaunchActivity::class.java) .setAction(actionOpenConversationNotification) .setData(conversationNotificationIntentData(notificationIntentOpenPath, target)) .putConversationTarget(target) @@ -142,7 +143,8 @@ internal fun conversationNotificationReplyIntent( context: Context, target: ConversationNotificationTarget, ): Intent = - Intent(context, ConversationReplyReceiver::class.java) + Intent() + .setClass(context, ConversationReplyReceiver::class.java) .setAction(actionReplyConversationNotification) .setData(conversationNotificationIntentData(notificationIntentReplyPath, target)) .putConversationTarget(target) diff --git a/apps/android/app/src/test/java/ai/openclaw/app/ConversationNotificationsTest.kt b/apps/android/app/src/test/java/ai/openclaw/app/ConversationNotificationsTest.kt index d49c4d3f6990..bd23ab57b465 100644 --- a/apps/android/app/src/test/java/ai/openclaw/app/ConversationNotificationsTest.kt +++ b/apps/android/app/src/test/java/ai/openclaw/app/ConversationNotificationsTest.kt @@ -57,6 +57,14 @@ class ConversationNotificationsTest { assertNotEquals(MainActivity::class.java.name, component.className) } + @Test + fun replyIntentTargetsPrivateReceiver() { + val intent = conversationNotificationReplyIntent(context, target) + val component = requireNotNull(intent.component) + + assertEquals(ConversationReplyReceiver::class.java.name, component.className) + } + @Test fun launchIntentIdentityDiffersAcrossConversationTargets() { val first = conversationNotificationLaunchIntent(context, target)