From 86db46507869bc9255266f3c87830036d311ea6f Mon Sep 17 00:00:00 2001 From: PipixiaSummer Date: Thu, 11 Sep 2025 15:26:07 +0800 Subject: [PATCH] =?UTF-8?q?tokenId=20=E8=BF=94=E5=9B=9E=E5=80=BC=E5=88=A4?= =?UTF-8?q?=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: PipixiaSummer --- interfaces/cj/kits/BUILD.gn | 1 + interfaces/cj/kits/src/device_manager_impl.cpp | 10 ++++++++++ 2 files changed, 11 insertions(+) diff --git a/interfaces/cj/kits/BUILD.gn b/interfaces/cj/kits/BUILD.gn index 1155e845d..7dae77041 100644 --- a/interfaces/cj/kits/BUILD.gn +++ b/interfaces/cj/kits/BUILD.gn @@ -75,6 +75,7 @@ ohos_shared_library("cj_distributed_device_manager_ffi") { "ipc:ipc_core", "napi:cj_bind_ffi", "napi:cj_bind_native", + "intl:libbegetutil", ] innerapi_tags = [ "platformsdk" ] diff --git a/interfaces/cj/kits/src/device_manager_impl.cpp b/interfaces/cj/kits/src/device_manager_impl.cpp index faffd17bf..62b74094c 100644 --- a/interfaces/cj/kits/src/device_manager_impl.cpp +++ b/interfaces/cj/kits/src/device_manager_impl.cpp @@ -25,6 +25,7 @@ #include "dm_constants.h" #include "dm_error_message.h" #include "dm_log.h" +#include "parameter.h" namespace OHOS::DistributedHardware { @@ -49,6 +50,7 @@ std::mutex g_dmUiCallbackMapMutex; const int32_t DM_AUTH_REQUEST_SUCCESS_STATUS = 7; const int32_t DM_FFI_BUF_LENGTH = 256; +const int32_t API_VERSION_19 = 19; constexpr const char* DM_FFI_EVENT_DEVICE_STATE_CHANGE = "deviceStateChange"; constexpr const char* DM_FFI_EVENT_DEVICE_DISCOVER_SUCCESS = "discoverSuccess"; @@ -379,6 +381,10 @@ int32_t DeviceManagerFfiImpl::StartDiscovering(const std::string &extra) } } uint64_t tokenId = OHOS::IPCSkeleton::GetSelfTokenID(); + if (tokenId == 0 && GetSdkApiVersion() > API_VERSION_19) { + LOGE("Failed to get token id."); + return DM_ERR_DISCOVERY_INVALID; + } int32_t ret = DeviceManager::GetInstance().StartDeviceDiscovery(bundleName_, tokenId, extra, discoveryCallback); if (ret != 0) { ret = TransformErrCode(ret); @@ -395,6 +401,10 @@ int32_t DeviceManagerFfiImpl::StopDiscovering() return ERR_NO_PERMISSION; } uint64_t tokenId = OHOS::IPCSkeleton::GetSelfTokenID(); + if (tokenId == 0 && GetSdkApiVersion() > API_VERSION_19) { + LOGE("Failed to get token id."); + return DM_ERR_DISCOVERpY_INVALID; + } int32_t ret = DeviceManager::GetInstance().StopDeviceDiscovery(tokenId, bundleName_); if (ret != 0) { ret = TransformErrCode(ret); -- Gitee