diff --git a/distributedaudio.gni b/distributedaudio.gni index 9d64dc1124893e39b17a1368c03677f3688d0555..6320eeb7e6dc302d573582abb45a32e7d3adaaaa 100644 --- a/distributedaudio.gni +++ b/distributedaudio.gni @@ -47,4 +47,10 @@ build_flags = [ "-Werror" ] declare_args() { distributed_audio_extension_sa = false + 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 e84c129135f7bd0576ecb2bc1defd882ccd63626..07a4e73469f6dd8dfe0f0e5cbee9dcd9aea46c3d 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 aef501e8fca4aca596ae05306651856a3ad75ff9..99d7aeead4f4ce6fe50322eb38ab9b680a30b715 100644 --- a/services/audiomanager/managersink/src/daudio_sink_manager.cpp +++ b/services/audiomanager/managersink/src/daudio_sink_manager.cpp @@ -453,6 +453,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); @@ -468,7 +469,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 %{public}d", level); FreeDeviceSecurityInfo(info); @@ -477,6 +480,7 @@ int32_t DAudioSinkManager::GetDeviceSecurityLevel(const std::string &udid) DHLOGE("Get device security level failed %{public}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 7d0ba2f8c1d3cbe30bacbe0348c372d9a764b356..fd205626c84c3246295e2be178f6ec0018389591 100755 --- a/services/audiomanager/servicesink/BUILD.gn +++ b/services/audiomanager/servicesink/BUILD.gn @@ -79,7 +79,6 @@ ohos_shared_library("distributed_audio_sink") { "cJSON:cjson", "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:distributedhardwareutils", @@ -101,6 +100,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" ] + } + subsystem_name = "distributedhardware" part_name = "distributed_audio" diff --git a/services/audiomanager/test/unittest/managersink/BUILD.gn b/services/audiomanager/test/unittest/managersink/BUILD.gn index 2e90a403bdb2ee5b98c2890316d20c51a2fcfb18..790b5ad1cdfb9146142b57990989b5a2f6ff42d5 100644 --- a/services/audiomanager/test/unittest/managersink/BUILD.gn +++ b/services/audiomanager/test/unittest/managersink/BUILD.gn @@ -64,7 +64,6 @@ ohos_unittest("DaudioSinkDevTest") { "cJSON:cjson", "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:distributedhardwareutils", @@ -79,6 +78,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 @@ -101,7 +105,6 @@ ohos_unittest("DAudioSinkManagerTest") { "cJSON:cjson", "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:distributedhardwareutils", @@ -114,6 +117,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") {