diff --git a/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.cpp b/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.cpp index 9d553405e4262eaefb0a2063d88ddba222fd373b..a182ba3eb885d75711033f5225ea4d6bec06b2ac 100644 --- a/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.cpp +++ b/services/distributeddataservice/service/udmf/preprocess/preprocess_utils.cpp @@ -72,6 +72,7 @@ int32_t PreProcessUtils::RuntimeDataImputation(UnifiedData &data, CustomOption & runtime.recordTotalNum = static_cast(data.GetRecords().size()); runtime.tokenId = option.tokenId; runtime.sdkVersion = GetSdkVersionByToken(option.tokenId); + runtime.visibility = option.visibility; data.SetRuntime(runtime); return E_OK; } diff --git a/services/distributeddataservice/service/udmf/udmf_service_impl.cpp b/services/distributeddataservice/service/udmf/udmf_service_impl.cpp index f48bb49536f39e21227c499ed6d3114101af1a9e..835db3c9ea0409ba2f3957ab8b419ad648ecbe48 100644 --- a/services/distributeddataservice/service/udmf/udmf_service_impl.cpp +++ b/services/distributeddataservice/service/udmf/udmf_service_impl.cpp @@ -376,14 +376,19 @@ int32_t UdmfServiceImpl::GetBatchData(const QueryOption &query, std::vectorvisibility == VISIBILITY_OWN_PROCESS && + query.tokenId != data.GetRuntime()->tokenId) { + continue; + } else { + unifiedDataSet.push_back(std::move(data)); + } + } + if (!IsFileMangerSa() && ProcessData(query, unifiedDataSet) != E_OK) { ZLOGE("Query no permission."); return E_NO_PERMISSION; } - for (auto &data : dataSet) { - PreProcessUtils::SetRemoteData(data); - unifiedDataSet.push_back(data); - } return E_OK; }