From 5a0251d9bc2aa6f896ede6b4562efaeea91cab82 Mon Sep 17 00:00:00 2001 From: songbao1 Date: Fri, 18 Apr 2025 11:13:10 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E7=AA=81=E7=A0=B4=E5=85=8D=E6=89=93?= =?UTF-8?q?=E6=89=B0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: songbao1 --- frameworks/ans/src/notification_request.cpp | 10 ++++++++++ interfaces/inner_api/notification_request.h | 5 +++++ .../ans/src/advanced_notification_publish_service.cpp | 9 ++++++--- 3 files changed, 21 insertions(+), 3 deletions(-) diff --git a/frameworks/ans/src/notification_request.cpp b/frameworks/ans/src/notification_request.cpp index 96ce61f2b..30f1e0572 100644 --- a/frameworks/ans/src/notification_request.cpp +++ b/frameworks/ans/src/notification_request.cpp @@ -765,6 +765,16 @@ uint32_t NotificationRequest::GetCollaboratedReminderFlag() const return collaboratedReminderFlag_; } +void SetIsSkipDoNotDisturbMode(bool isSkipDoNotDisturbMode) const +{ + isSkipDoNotDisturbMode_ = isSkipDoNotDisturbMode; +} + +bool IsSkipDoNotDisturbMode() const +{ + return isSkipDoNotDisturbMode_; +} + std::string NotificationRequest::Dump() { return "NotificationRequest{ " diff --git a/interfaces/inner_api/notification_request.h b/interfaces/inner_api/notification_request.h index eaabdb4f9..aa5dd9f9f 100644 --- a/interfaces/inner_api/notification_request.h +++ b/interfaces/inner_api/notification_request.h @@ -1466,6 +1466,10 @@ public: uint32_t GetCollaboratedReminderFlag() const; + void SetIsSkipDoNotDisturbMode(bool isSkipDoNotDisturbMode) const; + + bool IsSkipDoNotDisturbMode() const; + private: /** * Indicates the color mask, used for calculation with the ARGB value set by setColor(int32_t). @@ -1595,6 +1599,7 @@ private: bool forceDistributed_ {false}; bool notDistributed_ {false}; bool isSystemApp_ {false}; + bool isSkipDoNotDisturbMode_ {false}; std::shared_ptr wantAgent_ {}; std::shared_ptr removalWantAgent_ {}; diff --git a/services/ans/src/advanced_notification_publish_service.cpp b/services/ans/src/advanced_notification_publish_service.cpp index 461958549..a154c6d2b 100644 --- a/services/ans/src/advanced_notification_publish_service.cpp +++ b/services/ans/src/advanced_notification_publish_service.cpp @@ -381,7 +381,9 @@ ErrCode AdvancedNotificationService::PublishNotificationForIndirectProxy(const s return; } - CheckDoNotDisturbProfile(record); + if (!request->IsSkipDoNotDisturbMode()) { + CheckDoNotDisturbProfile(record); + } ChangeNotificationByControlFlags(record, isAgentController); if (IsSaCreateSystemLiveViewAsBundle(record, ipcUid) && (std::static_pointer_cast( @@ -2624,8 +2626,9 @@ ErrCode AdvancedNotificationService::PublishNotificationBySa(const sptrIsSkipDoNotDisturbMode()) { + CheckDoNotDisturbProfile(record); + } ChangeNotificationByControlFlags(record, isAgentController); if (IsSaCreateSystemLiveViewAsBundle(record, ipcUid) && (std::static_pointer_cast( -- Gitee From 8969dca82c9e5576a891c1f2923bbd7ad66ee7df Mon Sep 17 00:00:00 2001 From: songbao1 Date: Fri, 18 Apr 2025 11:46:12 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E7=AA=81=E7=A0=B4=E5=85=8D=E6=89=93?= =?UTF-8?q?=E6=89=B0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: songbao1 --- frameworks/ans/src/notification_request.cpp | 2 +- interfaces/inner_api/notification_request.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/frameworks/ans/src/notification_request.cpp b/frameworks/ans/src/notification_request.cpp index 30f1e0572..c41bfca0f 100644 --- a/frameworks/ans/src/notification_request.cpp +++ b/frameworks/ans/src/notification_request.cpp @@ -765,7 +765,7 @@ uint32_t NotificationRequest::GetCollaboratedReminderFlag() const return collaboratedReminderFlag_; } -void SetIsSkipDoNotDisturbMode(bool isSkipDoNotDisturbMode) const +void SetIsSkipDoNotDisturbMode(bool isSkipDoNotDisturbMode) { isSkipDoNotDisturbMode_ = isSkipDoNotDisturbMode; } diff --git a/interfaces/inner_api/notification_request.h b/interfaces/inner_api/notification_request.h index aa5dd9f9f..7267d864f 100644 --- a/interfaces/inner_api/notification_request.h +++ b/interfaces/inner_api/notification_request.h @@ -1466,7 +1466,7 @@ public: uint32_t GetCollaboratedReminderFlag() const; - void SetIsSkipDoNotDisturbMode(bool isSkipDoNotDisturbMode) const; + void SetIsSkipDoNotDisturbMode(bool isSkipDoNotDisturbMode); bool IsSkipDoNotDisturbMode() const; -- Gitee