From 542d4e606827f9695bb2ca05f268bc4e26980c43 Mon Sep 17 00:00:00 2001 From: Rodrigo Gomez Palacio Date: Mon, 3 Jun 2024 16:37:48 -0500 Subject: [PATCH] Always retrieve push token Motivation: in-line with how we did things prior to user model Fixes issue where FCM project is changed and push token is not updated on subscribed devices --- .../listeners/DeviceRegistrationListener.kt | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/OneSignalSDK/onesignal/notifications/src/main/java/com/onesignal/notifications/internal/listeners/DeviceRegistrationListener.kt b/OneSignalSDK/onesignal/notifications/src/main/java/com/onesignal/notifications/internal/listeners/DeviceRegistrationListener.kt index 1904d31948..65052baee5 100644 --- a/OneSignalSDK/onesignal/notifications/src/main/java/com/onesignal/notifications/internal/listeners/DeviceRegistrationListener.kt +++ b/OneSignalSDK/onesignal/notifications/src/main/java/com/onesignal/notifications/internal/listeners/DeviceRegistrationListener.kt @@ -69,21 +69,13 @@ internal class DeviceRegistrationListener( private fun retrievePushTokenAndUpdateSubscription() { val pushSubscription = _subscriptionManager.subscriptions.push - if (pushSubscription.token.isNotEmpty()) { + suspendifyOnThread { + val pushTokenAndStatus = _pushTokenManager.retrievePushToken() val permission = _notificationsManager.permission _subscriptionManager.addOrUpdatePushSubscriptionToken( - null, - if (permission) SubscriptionStatus.SUBSCRIBED else SubscriptionStatus.NO_PERMISSION, + pushTokenAndStatus.token, + if (permission) pushTokenAndStatus.status else SubscriptionStatus.NO_PERMISSION, ) - } else { - suspendifyOnThread { - val pushTokenAndStatus = _pushTokenManager.retrievePushToken() - val permission = _notificationsManager.permission - _subscriptionManager.addOrUpdatePushSubscriptionToken( - pushTokenAndStatus.token, - if (permission) pushTokenAndStatus.status else SubscriptionStatus.NO_PERMISSION, - ) - } } }