diff --git a/bundle.json b/bundle.json index 6369a05f991cfab387f1cc4af03166279dd87919..d3104d5adb2a28acc3c2185789d9a4b46471a0c6 100644 --- a/bundle.json +++ b/bundle.json @@ -30,12 +30,14 @@ "accessibility", "av_codec", "dsoftbus", + "eventhandler", "hisysevent", "init", "ipc", "hilog", "input", "json", + "ffrt", "graphic_2d", "graphic_surface", "media_foundation", diff --git a/common/BUILD.gn b/common/BUILD.gn index 96cc038b20a4d51e5d7d57f0a335a0a498469471..74c7be178dcabbd7709fa155f4184b3ed93f48a7 100644 --- a/common/BUILD.gn +++ b/common/BUILD.gn @@ -50,8 +50,6 @@ ohos_shared_library("distributed_screen_utils") { "json:nlohmann_json_static", ] - public_external_deps = [ "json:nlohmann_json_static" ] - defines = [ "HI_LOG_ENABLE", "DH_LOG_TAG=\"dscreenutil\"", diff --git a/common/test/unittest/BUILD.gn b/common/test/unittest/BUILD.gn index 7b6ab4e5b4977f3de1da20081f29db8fa6433b38..bd143d1d3042e2a383e51d57dc427783b7207afe 100644 --- a/common/test/unittest/BUILD.gn +++ b/common/test/unittest/BUILD.gn @@ -60,5 +60,6 @@ ohos_unittest("ScreenCommonTest") { "hisysevent:libhisysevent", "init:libbegetutil", "ipc:ipc_core", + "json:nlohmann_json_static", ] } diff --git a/services/common/test/unittest/decision_center/BUILD.gn b/services/common/test/unittest/decision_center/BUILD.gn index d51a7bfd253d3a3c20768fd013661a632db86228..14298d0fa9d5ae1bae54d70ecc398ac960164b89 100644 --- a/services/common/test/unittest/decision_center/BUILD.gn +++ b/services/common/test/unittest/decision_center/BUILD.gn @@ -57,6 +57,7 @@ ohos_unittest("ScreenDecisionCenterTest") { "c_utils:utils", "graphic_surface:surface", "graphic_surface:sync_fence", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] } diff --git a/services/common/test/unittest/imageJpeg/BUILD.gn b/services/common/test/unittest/imageJpeg/BUILD.gn index cfb5035aee062b94f153e6d20c4af5c8d92b358a..ce4d0142a81b7e5c962fdb71dd5fbaf9e9e57de9 100644 --- a/services/common/test/unittest/imageJpeg/BUILD.gn +++ b/services/common/test/unittest/imageJpeg/BUILD.gn @@ -53,6 +53,7 @@ ohos_unittest("JpegImageProcessorTest") { "av_codec:av_codec_client", "c_utils:utils", "graphic_surface:surface", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] } diff --git a/services/common/test/unittest/utils/BUILD.gn b/services/common/test/unittest/utils/BUILD.gn index 8ff1370f6243776a67999e4052a54fa10aa131c5..44bfc7bf7b2214040b3b34768a0c98afaacc4027 100644 --- a/services/common/test/unittest/utils/BUILD.gn +++ b/services/common/test/unittest/utils/BUILD.gn @@ -58,6 +58,7 @@ ohos_unittest("UtilsTest") { "distributed_hardware_fwk:libdhfwk_sdk", "googletest:gmock", "googletest:gtest_main", + "json:nlohmann_json_static", ] } diff --git a/services/screenclient/BUILD.gn b/services/screenclient/BUILD.gn index 2cce1550e917a9e87b5f5505778495092d26e947..9a74d6b6204be8e776d886ddb22aaa04d58ced43 100644 --- a/services/screenclient/BUILD.gn +++ b/services/screenclient/BUILD.gn @@ -48,6 +48,7 @@ ohos_shared_library("distributed_screen_client") { external_deps = [ "c_utils:utils", "distributed_hardware_fwk:distributedhardwareutils", + "eventhandler:libeventhandler", "graphic_2d:2d_graphics", "graphic_2d:libcomposer", "graphic_2d:libgraphic_utils", @@ -56,6 +57,7 @@ ohos_shared_library("distributed_screen_client") { "graphic_surface:surface", "hilog:libhilog", "input:libmmi-client", + "ipc:ipc_core", "json:nlohmann_json_static", "window_manager:libwm", ] diff --git a/services/screenservice/sinkservice/BUILD.gn b/services/screenservice/sinkservice/BUILD.gn index 6db4bea6f71766aed5d3a4ecdbe6548a0cdf3e5a..350eeae32d5f1dd033a9fc04fd8f28deb04dbb2b 100644 --- a/services/screenservice/sinkservice/BUILD.gn +++ b/services/screenservice/sinkservice/BUILD.gn @@ -98,8 +98,6 @@ ohos_shared_library("distributed_screen_sink") { "window_manager:libdm", ] - public_external_deps = [ "json:nlohmann_json_static" ] - subsystem_name = "distributedhardware" part_name = "distributed_screen" diff --git a/services/screenservice/sourceservice/BUILD.gn b/services/screenservice/sourceservice/BUILD.gn index 97da3dd8f6be69224997c9352f38f7ff1a0d0871..4061c4fb4728bfc06f3b1983729ac6cce82de5c2 100644 --- a/services/screenservice/sourceservice/BUILD.gn +++ b/services/screenservice/sourceservice/BUILD.gn @@ -106,8 +106,6 @@ ohos_shared_library("distributed_screen_source") { "window_manager:libdm", ] - public_external_deps = [ "json:nlohmann_json_static" ] - subsystem_name = "distributedhardware" part_name = "distributed_screen" diff --git a/services/screenservice/test/fuzztest/sourceservice/dscreenmgr/dscreenmanager_fuzzer/BUILD.gn b/services/screenservice/test/fuzztest/sourceservice/dscreenmgr/dscreenmanager_fuzzer/BUILD.gn index 885e1a59bb134f6b26b8a8896f6c5f0bf5663021..d6f3e04f5ec8a9e12a1b548469fbb1dbbb9a767d 100644 --- a/services/screenservice/test/fuzztest/sourceservice/dscreenmgr/dscreenmanager_fuzzer/BUILD.gn +++ b/services/screenservice/test/fuzztest/sourceservice/dscreenmgr/dscreenmanager_fuzzer/BUILD.gn @@ -57,6 +57,7 @@ ohos_fuzztest("DScreenManagerFuzzTest") { "graphic_2d:librender_service_client", "graphic_surface:surface", "hilog:libhilog", + "json:nlohmann_json_static", "window_manager:libdm", ] } diff --git a/services/screenservice/test/fuzztest/sourceservice/dscreenservice/dscreensourceservice_fuzzer/BUILD.gn b/services/screenservice/test/fuzztest/sourceservice/dscreenservice/dscreensourceservice_fuzzer/BUILD.gn index 9d80fa12e92982d16c476e6eacf1dddbe4d67db8..1a1646655c5c36471b4a56bc2e7c79767bba8884 100644 --- a/services/screenservice/test/fuzztest/sourceservice/dscreenservice/dscreensourceservice_fuzzer/BUILD.gn +++ b/services/screenservice/test/fuzztest/sourceservice/dscreenservice/dscreensourceservice_fuzzer/BUILD.gn @@ -55,6 +55,7 @@ ohos_fuzztest("DscreenSourceServiceFuzzTest") { "graphic_surface:surface", "hilog:libhilog", "ipc:ipc_core", + "json:nlohmann_json_static", "samgr:samgr_proxy", "window_manager:libdm", ] diff --git a/services/screenservice/test/unittest/sinkservice/screenregionmgr/BUILD.gn b/services/screenservice/test/unittest/sinkservice/screenregionmgr/BUILD.gn index f95607353dba774636d373d1e684e8cc28357cdb..fb9d52d48453d986ed2fc73b034d48b71d661096 100644 --- a/services/screenservice/test/unittest/sinkservice/screenregionmgr/BUILD.gn +++ b/services/screenservice/test/unittest/sinkservice/screenregionmgr/BUILD.gn @@ -83,6 +83,7 @@ ohos_unittest("DscreenRegionMgrTest") { "graphic_2d:librender_service_client", "graphic_surface:surface", "hisysevent:libhisysevent", + "json:nlohmann_json_static", "media_foundation:media_foundation", "window_manager:libdm", ] diff --git a/services/screenservice/test/unittest/sourceservice/dscreenmgr/BUILD.gn b/services/screenservice/test/unittest/sourceservice/dscreenmgr/BUILD.gn index a9dcd9bf6d622227e805b38faba6ec6df6e2ea43..1a6e3ed8e4da73bb3daad013077a73ab00aa3a0b 100644 --- a/services/screenservice/test/unittest/sourceservice/dscreenmgr/BUILD.gn +++ b/services/screenservice/test/unittest/sourceservice/dscreenmgr/BUILD.gn @@ -89,6 +89,7 @@ ohos_unittest("DscreenMgrTest") { "graphic_surface:sync_fence", "hdf_core:libhdi", "hicollie:libhicollie", + "json:nlohmann_json_static", "media_foundation:media_foundation", "window_manager:libdm", ] diff --git a/services/screentransport/screensinktrans/BUILD.gn b/services/screentransport/screensinktrans/BUILD.gn index 4bb63ebcce1310d2c4bf886a4aa7c4b48e8d181a..b3ad507cca220567d220792c3eb54530bde41502 100644 --- a/services/screentransport/screensinktrans/BUILD.gn +++ b/services/screentransport/screensinktrans/BUILD.gn @@ -75,13 +75,12 @@ ohos_shared_library("distributed_screen_sinktrans") { "hilog:libhilog", "hisysevent:libhisysevent", "hitrace:hitrace_meter", + "ipc:ipc_core", "json:nlohmann_json_static", "libjpeg-turbo:turbojpeg", "media_foundation:media_foundation", ] - public_external_deps = [ "json:nlohmann_json_static" ] - subsystem_name = "distributedhardware" part_name = "distributed_screen" diff --git a/services/screentransport/screensourceprocessor/encoder/src/image_source_encoder.cpp b/services/screentransport/screensourceprocessor/encoder/src/image_source_encoder.cpp index 07ee23fa8adf48d5919626ad06c9569e2412a248..9e697a3cc8b8c74e59dd5b14749bd58aa9dac0d2 100644 --- a/services/screentransport/screensourceprocessor/encoder/src/image_source_encoder.cpp +++ b/services/screentransport/screensourceprocessor/encoder/src/image_source_encoder.cpp @@ -127,6 +127,7 @@ int32_t ImageSourceEncoder::ConfigureEncoder(const VideoParam &configParam) ret = AddSurface(); if (ret != DH_SUCCESS) { DHLOGE("%{public}s: Add surface failed ret: %{public}" PRId32, DSCREEN_LOG_TAG, ret); + std::unique_lock bufLock(bufferMtx_); consumerSurface_ = nullptr; producerSurface_ = nullptr; return ret; @@ -137,6 +138,7 @@ int32_t ImageSourceEncoder::ConfigureEncoder(const VideoParam &configParam) int32_t ImageSourceEncoder::AddSurface() { DHLOGI("%{public}s: AddSurface.", DSCREEN_LOG_TAG); + std::unique_lock bufLock(bufferMtx_); consumerSurface_ = IConsumerSurface::Create(); if (consumerSurface_ == nullptr) { DHLOGE("%{public}s: creat consumer surface failed.", DSCREEN_LOG_TAG); @@ -220,7 +222,6 @@ int32_t ImageSourceEncoder::FeedEncoderData(sptr &surfaceBuffer) int32_t ret = memcpy_s(encoderSurfaceAddr, screenDataSize, surfaceAddr, screenDataSize); if (ret != EOK) { DHLOGE("%{public}s: surfaceBuffer memcpy_s run failed.", DSCREEN_LOG_TAG); - consumerSurface_->ReleaseBuffer(surfaceBuffer, -1); encoderSurface_->CancelBuffer(encoderSurfaceBuffer); return ret; } @@ -229,11 +230,9 @@ int32_t ImageSourceEncoder::FeedEncoderData(sptr &surfaceBuffer) SurfaceError surfaceErr = encoderSurface_->FlushBuffer(encoderSurfaceBuffer, -1, flushConfig); if (surfaceErr != SURFACE_ERROR_OK) { DHLOGE("%{public}s: encoderSurface_ flush buffer failed.", DSCREEN_LOG_TAG); - consumerSurface_->ReleaseBuffer(surfaceBuffer, -1); encoderSurface_->CancelBuffer(encoderSurfaceBuffer); return surfaceErr; } - consumerSurface_->ReleaseBuffer(surfaceBuffer, -1); return DH_SUCCESS; } @@ -301,11 +300,14 @@ int32_t ImageSourceEncoder::StopEncoder() DHLOGE("%{public}s: Stop encoder failed.", DSCREEN_LOG_TAG); return ERR_DH_SCREEN_CODEC_STOP_FAILED; } - ret = consumerSurface_->UnregisterConsumerListener(); - if (ret != SURFACE_ERROR_OK) { - DHLOGE("Unregister Consumer Listener failed."); + std::unique_lock bufLock(bufferMtx_); + if (consumerSurface_ != nullptr) { + ret = consumerSurface_->UnregisterConsumerListener(); + if (ret != SURFACE_ERROR_OK) { + DHLOGE("Unregister Consumer Listener failed."); + } + consumerSurface_ = nullptr; } - consumerSurface_ = nullptr; producerSurface_ = nullptr; return DH_SUCCESS; } diff --git a/services/screentransport/screensourcetrans/BUILD.gn b/services/screentransport/screensourcetrans/BUILD.gn index 0960cebcd41451f1c70504da3b06fcd97d976f2f..0e211a6b956e5f16a8fd1426f4da932b693d8ca8 100644 --- a/services/screentransport/screensourcetrans/BUILD.gn +++ b/services/screentransport/screensourcetrans/BUILD.gn @@ -71,18 +71,18 @@ ohos_shared_library("distributed_screen_sourcetrans") { "distributed_hardware_fwk:distributedhardwareutils", "distributed_hardware_fwk:libdhfwk_sdk", "dsoftbus:softbus_client", + "ffrt:libffrt", "graphic_surface:surface", "graphic_surface:sync_fence", "hilog:libhilog", "hisysevent:libhisysevent", "hitrace:hitrace_meter", + "ipc:ipc_core", "json:nlohmann_json_static", "libjpeg-turbo:turbojpeg", "media_foundation:media_foundation", ] - public_external_deps = [ "json:nlohmann_json_static" ] - subsystem_name = "distributedhardware" part_name = "distributed_screen" diff --git a/services/screentransport/screensourcetrans/src/screen_source_trans.cpp b/services/screentransport/screensourcetrans/src/screen_source_trans.cpp index 60d8e3900b82574a9eef8567585f1ab8ff5cb1fc..aa4b964be34c7866004f759e40475ba48cb05450 100644 --- a/services/screentransport/screensourcetrans/src/screen_source_trans.cpp +++ b/services/screentransport/screensourcetrans/src/screen_source_trans.cpp @@ -25,6 +25,7 @@ #include "dscreen_hisysevent.h" #include "dscreen_hitrace.h" #include "dscreen_log.h" +#include "ffrt_inner.h" #include "image_source_processor.h" #include "screen_data_channel_impl.h" namespace OHOS { @@ -342,7 +343,7 @@ void ScreenSourceTrans::OnSessionOpened() isChannelReady_ = true; DHLOGI("%{public}s: Start thread.", DSCREEN_LOG_TAG); - std::thread([this] { this->FeedChannelData(); }).detach(); + ffrt::submit([this] { this->FeedChannelData(); }); std::unique_lock lck(sessionMtx_); sessionCond_.notify_all(); } diff --git a/services/screentransport/test/fuzztest/screensinkprocessor/onbufferavailable_fuzzer/BUILD.gn b/services/screentransport/test/fuzztest/screensinkprocessor/onbufferavailable_fuzzer/BUILD.gn index 42cc79d7953b880f5f8e58c3d7a3b3900b919592..906cbcf7d79cda216d75e9769abcc13c187d66f3 100644 --- a/services/screentransport/test/fuzztest/screensinkprocessor/onbufferavailable_fuzzer/BUILD.gn +++ b/services/screentransport/test/fuzztest/screensinkprocessor/onbufferavailable_fuzzer/BUILD.gn @@ -64,6 +64,7 @@ ohos_fuzztest("OnBufferAvailableFuzzTest") { "graphic_surface:sync_fence", "hilog:libhilog", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] } diff --git a/services/screentransport/test/fuzztest/screensourceprocessor/onbufferavailable_fuzzer/BUILD.gn b/services/screentransport/test/fuzztest/screensourceprocessor/onbufferavailable_fuzzer/BUILD.gn index f5882ae597a73300b8c9b66c963d5761e14f5874..ae57674d9a24cbdc0f7d02862dfeae6e5a271c5c 100644 --- a/services/screentransport/test/fuzztest/screensourceprocessor/onbufferavailable_fuzzer/BUILD.gn +++ b/services/screentransport/test/fuzztest/screensourceprocessor/onbufferavailable_fuzzer/BUILD.gn @@ -64,6 +64,7 @@ ohos_fuzztest("OnBufferAvailableFuzzTest") { "graphic_surface:sync_fence", "hilog:libhilog", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] } diff --git a/services/screentransport/test/fuzztest/screensourceprocessor/onerror_fuzzer/BUILD.gn b/services/screentransport/test/fuzztest/screensourceprocessor/onerror_fuzzer/BUILD.gn index b0d78ab59ec88107877632670c8bcd3aeb1c5ab4..ea51f2595f5c546a7eecd2138d8b488bb388c226 100644 --- a/services/screentransport/test/fuzztest/screensourceprocessor/onerror_fuzzer/BUILD.gn +++ b/services/screentransport/test/fuzztest/screensourceprocessor/onerror_fuzzer/BUILD.gn @@ -57,6 +57,7 @@ ohos_fuzztest("OnErrorFuzzTest") { "graphic_surface:sync_fence", "hilog:libhilog", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] diff --git a/services/screentransport/test/fuzztest/screensourceprocessor/oninputbufferavailable_fuzzer/BUILD.gn b/services/screentransport/test/fuzztest/screensourceprocessor/oninputbufferavailable_fuzzer/BUILD.gn index 61da1bcd389b848731353f40a7b4f44f46a5af61..a7752d8c2a5baad99de9d8e2efe1369cf30662dd 100644 --- a/services/screentransport/test/fuzztest/screensourceprocessor/oninputbufferavailable_fuzzer/BUILD.gn +++ b/services/screentransport/test/fuzztest/screensourceprocessor/oninputbufferavailable_fuzzer/BUILD.gn @@ -57,6 +57,7 @@ ohos_fuzztest("OnInputBufferAvailableFuzzTest") { "graphic_surface:sync_fence", "hilog:libhilog", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] diff --git a/services/screentransport/test/fuzztest/screensourceprocessor/onoutputbufferavailable_fuzzer/BUILD.gn b/services/screentransport/test/fuzztest/screensourceprocessor/onoutputbufferavailable_fuzzer/BUILD.gn index be3c6620a2a3fb05a704a96d278a0672aaa8e7d3..3d0a8b5a17cdf84bbb278001fe2addfd8f1a8e52 100644 --- a/services/screentransport/test/fuzztest/screensourceprocessor/onoutputbufferavailable_fuzzer/BUILD.gn +++ b/services/screentransport/test/fuzztest/screensourceprocessor/onoutputbufferavailable_fuzzer/BUILD.gn @@ -58,6 +58,7 @@ ohos_fuzztest("OnOutputBufferAvailableFuzzTest") { "graphic_surface:sync_fence", "hilog:libhilog", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] diff --git a/services/screentransport/test/fuzztest/screensourceprocessor/onoutputformatchanged_fuzzer/BUILD.gn b/services/screentransport/test/fuzztest/screensourceprocessor/onoutputformatchanged_fuzzer/BUILD.gn index 34b832e72088117605cf03e85ca8dadd6590a11e..b723e7396dbdd2c600e3a6c58d6e32901722ca1d 100644 --- a/services/screentransport/test/fuzztest/screensourceprocessor/onoutputformatchanged_fuzzer/BUILD.gn +++ b/services/screentransport/test/fuzztest/screensourceprocessor/onoutputformatchanged_fuzzer/BUILD.gn @@ -57,6 +57,7 @@ ohos_fuzztest("OnOutputFormatChangedFuzzTest") { "graphic_surface:sync_fence", "hilog:libhilog", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] diff --git a/services/screentransport/test/unittest/screendatachannel/BUILD.gn b/services/screentransport/test/unittest/screendatachannel/BUILD.gn index 05329a4d8262879cdd394ad261b5b5b5cd7be5c0..e6fc942a36744d8fc320c7afb076d98f3009f914 100644 --- a/services/screentransport/test/unittest/screendatachannel/BUILD.gn +++ b/services/screentransport/test/unittest/screendatachannel/BUILD.gn @@ -64,6 +64,7 @@ ohos_unittest("DataChannelTest") { "googletest:gmock", "googletest:gtest_main", "hilog:libhilog", + "json:nlohmann_json_static", ] defines = [ diff --git a/services/screentransport/test/unittest/screensinkprocessor/BUILD.gn b/services/screentransport/test/unittest/screensinkprocessor/BUILD.gn index 5b85c35e4e09a7ac74649b9be436ab43b8a82272..20221834086bc8c43fb03480c983a196253ac56e 100644 --- a/services/screentransport/test/unittest/screensinkprocessor/BUILD.gn +++ b/services/screentransport/test/unittest/screensinkprocessor/BUILD.gn @@ -68,6 +68,7 @@ ohos_unittest("SinkProcessorTest") { "googletest:gtest_main", "graphic_surface:surface", "hilog:libhilog", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] diff --git a/services/screentransport/test/unittest/screensinktrans/BUILD.gn b/services/screentransport/test/unittest/screensinktrans/BUILD.gn index cf17a523432906940f4c0370e628d95164c02880..dd7e19da378686b6684ec6f7d3b3ff679cb2dd33 100644 --- a/services/screentransport/test/unittest/screensinktrans/BUILD.gn +++ b/services/screentransport/test/unittest/screensinktrans/BUILD.gn @@ -66,6 +66,7 @@ ohos_unittest("SinkTransTest") { "googletest:gtest_main", "graphic_surface:surface", "hilog:libhilog", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] diff --git a/services/screentransport/test/unittest/screensourceprocessor/BUILD.gn b/services/screentransport/test/unittest/screensourceprocessor/BUILD.gn index f54d1338b5681a7c71c4d2fd02f51da9a4be5f06..5ad167a25d72c5e27503ec492a5574819036931a 100644 --- a/services/screentransport/test/unittest/screensourceprocessor/BUILD.gn +++ b/services/screentransport/test/unittest/screensourceprocessor/BUILD.gn @@ -66,6 +66,7 @@ ohos_unittest("SourceProcessorTest") { "graphic_surface:surface", "graphic_surface:sync_fence", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] } diff --git a/services/screentransport/test/unittest/screensourcetrans/BUILD.gn b/services/screentransport/test/unittest/screensourcetrans/BUILD.gn index 5899769797d0e672a687fa566295cfe0d3f20080..5980239e02ae1218f4d3f4a24bb1e603a822a6e7 100644 --- a/services/screentransport/test/unittest/screensourcetrans/BUILD.gn +++ b/services/screentransport/test/unittest/screensourcetrans/BUILD.gn @@ -71,6 +71,7 @@ ohos_unittest("SourceTransTest") { "graphic_surface:surface", "graphic_surface:sync_fence", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] } diff --git a/services/screentransport/test/unittest/screentranstestutils/BUILD.gn b/services/screentransport/test/unittest/screentranstestutils/BUILD.gn index 6226113765e7c28c3c7fdc595b704def7e5135f4..34677b60eed32fe0d1becae9a868252f0ed287a1 100644 --- a/services/screentransport/test/unittest/screentranstestutils/BUILD.gn +++ b/services/screentransport/test/unittest/screentranstestutils/BUILD.gn @@ -71,6 +71,7 @@ ohos_unittest("ScreenCallbackTest") { "graphic_surface:surface", "graphic_surface:sync_fence", "ipc:ipc_core", + "json:nlohmann_json_static", "media_foundation:media_foundation", ] }