From d7d41a6562e771f564998b3cd3974ef5e955c82c Mon Sep 17 00:00:00 2001 From: fangjinliang1 Date: Wed, 12 Jan 2022 17:40:47 +0800 Subject: [PATCH] fixed 0fe86a5 from https://gitee.com/fangJinliang1/notification_ans_standard/pulls/133 fixed 044a41f from https://gitee.com/fangJinliang1/notification_ans_standard/pulls/129 Support multiple users Signed-off-by: fangjinliang1 Change-Id: I643029d4b5b1c0fd4aaf4eb6a51d1a0b69e4c6d6 --- services/ans/src/advanced_notification_service.cpp | 1 - services/ans/src/notification_subscriber_manager.cpp | 10 +++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/services/ans/src/advanced_notification_service.cpp b/services/ans/src/advanced_notification_service.cpp index 2110f89f6..f936f4655 100644 --- a/services/ans/src/advanced_notification_service.cpp +++ b/services/ans/src/advanced_notification_service.cpp @@ -162,7 +162,6 @@ inline ErrCode PrepereNotificationRequest(const sptr &reque int userId = SUBSCRIBE_USER_INIT; OHOS::AccountSA::OsAccountManager::GetOsAccountLocalIdFromUid(uid, userId); request->SetCreatorUserId(userId); - ErrCode result = CheckPictureSize(request); return result; diff --git a/services/ans/src/notification_subscriber_manager.cpp b/services/ans/src/notification_subscriber_manager.cpp index 9b7d7e247..6e18a3e81 100644 --- a/services/ans/src/notification_subscriber_manager.cpp +++ b/services/ans/src/notification_subscriber_manager.cpp @@ -99,6 +99,7 @@ void NotificationSubscriberManager::NotifyConsumed( ANS_LOGE("handler is nullptr"); return; } + AppExecFwk::EventHandler::Callback NotifyConsumedFunc = std::bind(&NotificationSubscriberManager::NotifyConsumedInner, this, notification, notificationMap); @@ -205,6 +206,11 @@ void NotificationSubscriberManager::AddRecordInfo( record->subscribedAll = false; } record->userId = subscribeInfo->GetAppUserId(); + if (record->userId == SUBSCRIBE_USER_INIT) { + record->userId = SUBSCRIBE_USER_ALL; + } + int subAll = record->subscribedAll; + int usID = record->userId; } else { record->bundleList_.clear(); record->subscribedAll = true; @@ -232,7 +238,6 @@ ErrCode NotificationSubscriberManager::AddSubscriberInner( const sptr &subscriber, const sptr &subscribeInfo) { std::shared_ptr record = FindSubscriberRecord(subscriber); - if (record == nullptr) { record = CreateSubscriberRecord(subscriber); if (record == nullptr) { @@ -281,10 +286,9 @@ void NotificationSubscriberManager::NotifyConsumedInner( { for (auto record : subscriberRecordList_) { auto BundleNames = notification->GetBundleName(); - auto iter = std::find(record->bundleList_.begin(), record->bundleList_.end(), BundleNames); if (!record->subscribedAll == (iter != record->bundleList_.end()) && - (notification->GetUserId() == record->userId || notification->GetUserId() == SUBSCRIBE_USER_ALL)) { + (notification->GetUserId() == record->userId || record->userId == SUBSCRIBE_USER_ALL)) { record->subscriber->OnConsumed(notification, notificationMap); record->subscriber->OnConsumed(notification); } -- Gitee