diff --git a/services/ans/src/advanced_notification_service.cpp b/services/ans/src/advanced_notification_service.cpp index 21eb29eafc2d351d79578bd979cbd7d3cdd882ed..d0d60fad550810007457bba4e429d3db98951519 100644 --- a/services/ans/src/advanced_notification_service.cpp +++ b/services/ans/src/advanced_notification_service.cpp @@ -914,6 +914,10 @@ ErrCode AdvancedNotificationService::UpdateSlotAuthInfo(const std::shared_ptrSetAuthorizedStatus(NotificationSlot::AuthorizedStatus::AUTHORIZED); } } + if (record->request->IsSystemLiveView()) { + ANS_LOGI("System live view no need add sloty."); + return ERR_OK; + } std::vector> slots; slots.push_back(slot); result = NotificationPreferences::GetInstance()->AddNotificationSlots(record->bundleOption, slots); diff --git a/services/ans/src/advanced_notification_slot_service.cpp b/services/ans/src/advanced_notification_slot_service.cpp index 8621e25f9abf31d0a3f6c562e1970fdc1bf57823..026b75455e0737e5ff542600664592be3fc05992 100644 --- a/services/ans/src/advanced_notification_slot_service.cpp +++ b/services/ans/src/advanced_notification_slot_service.cpp @@ -486,9 +486,14 @@ ErrCode AdvancedNotificationService::AssignValidNotificationSlot(const std::shar } GenerateSlotReminderMode(slot, bundleOption); - std::vector> slots; - slots.push_back(slot); - result = NotificationPreferences::GetInstance()->AddNotificationSlots(bundleOption, slots); + if (record->request->IsSystemLiveView()) { + ANS_LOGI("System live view no need add sloty."); + result = ERR_OK; + } else { + std::vector> slots; + slots.push_back(slot); + result = NotificationPreferences::GetInstance()->AddNotificationSlots(bundleOption, slots); + } } if (result == ERR_OK) { std::string bundleName = bundleOption->GetBundleName(); diff --git a/services/ans/src/permission_filter.cpp b/services/ans/src/permission_filter.cpp index 280b7229e824624689dfe5231fa5e50356b0f92b..f150742151d500d65a73ec7cebb055ac91b5a03f 100644 --- a/services/ans/src/permission_filter.cpp +++ b/services/ans/src/permission_filter.cpp @@ -44,6 +44,11 @@ ErrCode PermissionFilter::OnPublish(const std::shared_ptr &r } } + if (record->request->IsSystemLiveView()) { + ANS_LOGI("System live view no need check switch."); + return ERR_OK; + } + sptr slot; NotificationConstant::SlotType slotType = record->request->GetSlotType(); message.SlotType(slotType);