From 65cec391b8febe2bc1e381e9d5973bbcd43c2342 Mon Sep 17 00:00:00 2001 From: Rokashevich Svetlana Date: Thu, 3 Jul 2025 20:50:06 +0800 Subject: [PATCH] [ANI] Remove relative path search API Signed-off-by: Rokashevich Svetlana Change-Id: I13553fbc3dd53371e903b5b43b3bf81c0672f176 --- .../native/backup_ext/include/ani_utils.h | 3 ++- .../kits/ani/file_uri/src/ani_file_uri.cpp | 19 ++++++------------- 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/frameworks/native/backup_ext/include/ani_utils.h b/frameworks/native/backup_ext/include/ani_utils.h index 03cbc44f1..392964155 100644 --- a/frameworks/native/backup_ext/include/ani_utils.h +++ b/frameworks/native/backup_ext/include/ani_utils.h @@ -40,7 +40,8 @@ public: } ani_class cls; - if (ANI_OK != env->Namespace_FindClass(ns, clsName, &cls)) { + const std::string fullClsName = std::string(nsName) + "." + clsName; + if (ANI_OK != env->FindClass(fullClsName.c_str(), &cls)) { std::cerr << "[ANI] Not found class " << clsName << std::endl; return nullobj; } diff --git a/interfaces/kits/ani/file_uri/src/ani_file_uri.cpp b/interfaces/kits/ani/file_uri/src/ani_file_uri.cpp index 8ba4067de..70972d6b6 100644 --- a/interfaces/kits/ani/file_uri/src/ani_file_uri.cpp +++ b/interfaces/kits/ani/file_uri/src/ani_file_uri.cpp @@ -130,17 +130,10 @@ void FileUriConstructor(ani_env *env, ani_object obj, ani_string stringObj) StdSharedPtrHolder *holder = new StdSharedPtrHolder(std::move(fileuriEntity)); - ani_namespace ns; - if (env->FindNamespace("L@ohos/file/fileuri/fileUri;", &ns) != ANI_OK) { - LOGE("Namespace L@ohos/file/fileuri/fileUri not found."); - ThrowBusinessError(env, EPERM, "Namespace L@ohos/file/fileuri/fileUri not found."); - return; - }; - ani_class cls; - static const char *className = "LFileUri;"; - if (env->Namespace_FindClass(ns, className, &cls) != ANI_OK) { - LOGE("Not found class LFileUri in Namespace L@ohos/file/fileuri/fileUri."); + static const char *className = "@ohos.file.fileuri.fileUri.FileUri"; + if (env->FindClass(className, &cls) != ANI_OK) { + LOGE("Not found class LFileUri in Namespace @ohos.file.fileuri.fileUri."); ThrowBusinessError(env, EPERM, "Class LFileUri not found."); return; } @@ -182,10 +175,10 @@ ANI_EXPORT ani_status ANI_Constructor(ani_vm *vm, uint32_t *result) return ANI_ERROR; }; - static const char *className = "LFileUri;"; + static const char *className = "@ohos.file.fileuri.fileUri.FileUri;"; ani_class fileUriClass; - if (ANI_OK != env->Namespace_FindClass(ns, className, &fileUriClass)) { - LOGE("Not found class %{public}s in %{public}s.", nsName, nsName); + if (ANI_OK != env->FindClass(className, &fileUriClass)) { + LOGE("Not found class %{public}s.", className); return ANI_NOT_FOUND; } std::array classMethods = { -- Gitee