diff --git a/distributedaudio.gni b/distributedaudio.gni index 06e5b9b9012992a75b7f092a70a2410bba5271c4..ed90e0959cdf30a6eb0eebb7deb185f7630b66f0 100644 --- a/distributedaudio.gni +++ b/distributedaudio.gni @@ -44,3 +44,12 @@ innerkits_path = "${distributedaudio_path}/interfaces/inner_kits" distributedaudio_fuzz_path = "distributed_audio/distributed_audio" build_flags = [ "-Werror" ] + +declare_args() { + device_security_level_control = true + + if (defined(global_parts_info) && + !defined(global_parts_info.security_device_security_level)) { + device_security_level_control = false + } +} diff --git a/services/audiomanager/managersink/include/daudio_sink_manager.h b/services/audiomanager/managersink/include/daudio_sink_manager.h index a88bcba4b07c44e09e91860d56a4ac4d26d59ba7..04a0c8fa7e66401abe8affc701f3b8da085698e1 100644 --- a/services/audiomanager/managersink/include/daudio_sink_manager.h +++ b/services/audiomanager/managersink/include/daudio_sink_manager.h @@ -22,8 +22,10 @@ #include "single_instance.h" #include "device_manager.h" #include "device_manager_callback.h" +#ifdef DEVICE_SECURITY_LEVEL_ENABLE #include "device_security_defines.h" #include "device_security_info.h" +#endif #include "daudio_sink_dev.h" #include "idaudio_source.h" diff --git a/services/audiomanager/managersink/src/daudio_sink_manager.cpp b/services/audiomanager/managersink/src/daudio_sink_manager.cpp index c05403b35a161fa158787940b5f1f260e44f8897..86841c7aa25491ca0c37df98260cc0cfc5224aa8 100644 --- a/services/audiomanager/managersink/src/daudio_sink_manager.cpp +++ b/services/audiomanager/managersink/src/daudio_sink_manager.cpp @@ -415,6 +415,7 @@ bool DAudioSinkManager::CheckDeviceSecurityLevel(const std::string &srcDeviceId, int32_t DAudioSinkManager::GetDeviceSecurityLevel(const std::string &udid) { +#ifdef DEVICE_SECURITY_LEVEL_ENABLE DeviceIdentify devIdentify; devIdentify.length = DEVICE_ID_MAX_LEN; int32_t ret = memcpy_s(devIdentify.identity, DEVICE_ID_MAX_LEN, udid.c_str(), DEVICE_ID_MAX_LEN); @@ -430,7 +431,9 @@ int32_t DAudioSinkManager::GetDeviceSecurityLevel(const std::string &udid) info = nullptr; return DEFAULT_DEVICE_SECURITY_LEVEL; } +#endif int32_t level = 0; +#ifdef DEVICE_SECURITY_LEVEL_ENABLE ret = GetDeviceSecurityLevelValue(info, &level); DHLOGE("Get device security level, level is %d", level); FreeDeviceSecurityInfo(info); @@ -439,6 +442,7 @@ int32_t DAudioSinkManager::GetDeviceSecurityLevel(const std::string &udid) DHLOGE("Get device security level failed %d", ret); return DEFAULT_DEVICE_SECURITY_LEVEL; } +#endif return level; } diff --git a/services/audiomanager/servicesink/BUILD.gn b/services/audiomanager/servicesink/BUILD.gn index 022415421ae243117915c6bf1e8ce8ab071406d0..f7153500309a969d6933bf78dcbf5954df36c40f 100755 --- a/services/audiomanager/servicesink/BUILD.gn +++ b/services/audiomanager/servicesink/BUILD.gn @@ -84,7 +84,6 @@ ohos_shared_library("distributed_audio_sink") { "audio_framework:audio_renderer", "c_utils:utils", "device_manager:devicemanagersdk", - "device_security_level:dslm_sdk", "distributed_hardware_fwk:distributed_av_receiver", "distributed_hardware_fwk:distributed_av_sender", "distributed_hardware_fwk:libdhfwk_sdk", @@ -104,6 +103,11 @@ ohos_shared_library("distributed_audio_sink") { "LOG_DOMAIN=0xD004130", ] + if (device_security_level_control) { + external_deps += [ "device_security_level:dslm_sdk" ] + defines += [ "DEVICE_SECURITY_LEVEL_ENABLE" ] + } + if (build_variant == "root") { defines += [ "DUMP_DMICCLIENT_FILE", diff --git a/services/audiomanager/test/unittest/managersink/BUILD.gn b/services/audiomanager/test/unittest/managersink/BUILD.gn index aa19c34c7731ef5623566c24635fca5d80191f46..68ee95ccd63d106c1cc59c659b871626d557fb84 100644 --- a/services/audiomanager/test/unittest/managersink/BUILD.gn +++ b/services/audiomanager/test/unittest/managersink/BUILD.gn @@ -74,7 +74,6 @@ ohos_unittest("DaudioSinkDevTest") { "audio_framework:audio_renderer", "c_utils:utils", "device_manager:devicemanagersdk", - "device_security_level:dslm_sdk", "distributed_hardware_fwk:distributed_av_receiver", "distributed_hardware_fwk:distributed_av_sender", "hdf_core:libhdf_ipc_adapter", @@ -85,6 +84,11 @@ ohos_unittest("DaudioSinkDevTest") { "safwk:system_ability_fwk", "samgr:samgr_proxy", ] + + if (device_security_level_control) { + external_deps += [ "device_security_level:dslm_sdk" ] + defines = [ "DEVICE_SECURITY_LEVEL_ENABLE" ] + } } ## UnitTest daudio_sink_manager_test @@ -108,7 +112,6 @@ ohos_unittest("DAudioSinkManagerTest") { "audio_framework:audio_renderer", "c_utils:utils", "device_manager:devicemanagersdk", - "device_security_level:dslm_sdk", "distributed_hardware_fwk:distributed_av_receiver", "distributed_hardware_fwk:distributed_av_sender", "hdf_core:libhdf_ipc_adapter", @@ -119,6 +122,11 @@ ohos_unittest("DAudioSinkManagerTest") { "safwk:system_ability_fwk", "samgr:samgr_proxy", ] + + if (device_security_level_control) { + external_deps += [ "device_security_level:dslm_sdk" ] + defines = [ "DEVICE_SECURITY_LEVEL_ENABLE" ] + } } group("manager_sink_test") {