diff --git a/services/audio_policy/server/service/service_main/src/audio_policy_server.cpp b/services/audio_policy/server/service/service_main/src/audio_policy_server.cpp index 5fb3c7d80cef761eeb26f9d011264333bc7c0491..560b4219725d87b4744f5588fcfbb87cb55217e7 100644 --- a/services/audio_policy/server/service/service_main/src/audio_policy_server.cpp +++ b/services/audio_policy/server/service/service_main/src/audio_policy_server.cpp @@ -998,6 +998,7 @@ void AudioPolicyServer::SubscribeCommonEventExecute() SubscribeCommonEvent("usual.event.SCREEN_LOCKED"); SubscribeCommonEvent("usual.event.SCREEN_UNLOCKED"); SubscribeCommonEvent("usual.event.LOCALE_CHANGED"); + SubscribeCommonEvent("usual.event.USER_STARTED"); #ifdef USB_ENABLE usbManager_.SubscribeEvent(); #endif @@ -1067,7 +1068,7 @@ void AudioPolicyServer::OnReceiveEvent(const EventFwk::CommonEventData &eventDat } else if (action == "usual.event.SCREEN_UNLOCKED") { AUDIO_INFO_LOG("receive SCREEN_UNLOCKED action, can change volume"); isScreenOffOrLock_ = false; - } else if (action == "usual.event.LOCALE_CHANGED") { + } else if (action == "usual.event.LOCALE_CHANGED" || action == "usual.event.USER_STARTED") { CallRingtoneLibrary(); } } diff --git a/services/audio_policy/test/unittest/audio_interrupt_service_test/src/audio_policy_server_unit_test_second.cpp b/services/audio_policy/test/unittest/audio_interrupt_service_test/src/audio_policy_server_unit_test_second.cpp index 462c996aa302ab22f82c0e3805936c032bb98ec1..d159792caec317de587967284a5d102db4538e78 100644 --- a/services/audio_policy/test/unittest/audio_interrupt_service_test/src/audio_policy_server_unit_test_second.cpp +++ b/services/audio_policy/test/unittest/audio_interrupt_service_test/src/audio_policy_server_unit_test_second.cpp @@ -437,6 +437,26 @@ HWTEST(AudioPolicyUnitTestSecond, AudioPolicyServer_219, TestSize.Level4) EXPECT_EQ(audioPolicyServer->isInitRingtoneReady_, true); } +/** + * @tc.name : Test AudioPolicyServer. + * @tc.number: AudioPolicyServer_221 + * @tc.desc : Test OnReceiveEvent. + */ +HWTEST(AudioPolicyUnitTestSecond, AudioPolicyServer_221, TestSize.Level4) +{ + int32_t systemAbilityId = 0; + auto audioPolicyServer = std::make_shared(systemAbilityId); + ASSERT_NE(audioPolicyServer, nullptr); + + EventFwk::CommonEventData eventData; + OHOS::EventFwk::Want want; + want.SetAction("usual.event.USER_STARTED"); + eventData.SetWant(want); + audioPolicyServer->OnReceiveEvent(eventData); + int32_t result = audioPolicyServer->CallRingtoneLibrary(); + EXPECT_EQ(result, SUCCESS); +} + /** * @tc.name : IsContinueAddVolTest_001 * @tc.number: IsContinueAddVolTest_001