diff --git a/bundle.json b/bundle.json index 3145e934ba473262a7acf0dd4923ef94d5c492d2..67b1be15eeb0eb1105383a3ebccc011ca73dd9f1 100644 --- a/bundle.json +++ b/bundle.json @@ -61,7 +61,8 @@ "header": { "header_base": "//foundation/arkui/napi/interfaces/kits", "header_files": [ - "napi/native_api.h" + "napi/native_api.h", + "napi/common.h" ] }, "name": "//foundation/arkui/napi:ace_napi" diff --git a/interfaces/inner_api/napi/native_node_api.h b/interfaces/inner_api/napi/native_node_api.h index 18fd603f315e61130f9f7a6726c3eeafedf5e05c..5ba23b322c07ee8a442f3cda3544e7b517058e6a 100644 --- a/interfaces/inner_api/napi/native_node_api.h +++ b/interfaces/inner_api/napi/native_node_api.h @@ -24,6 +24,7 @@ #include "js_native_api.h" #include "node_api.h" #include "native_common.h" +#include "napi/common.h" typedef void (*NAPIGetJSCode)(const char** buf, int* bufLen); typedef void (*NapiNativeFinalize)(napi_env env, void* data, void* hint); @@ -243,5 +244,9 @@ NAPI_EXTERN napi_status napi_load_module_with_info_hybrid(napi_env env, const char* path, const char* module_info, napi_value* result); +NAPI_EXTERN napi_status napi_queue_async_work_with_queue(napi_env env, + napi_async_work work, + napi_qos_t qos, + uintptr_t taskId); #endif /* FOUNDATION_ACE_NAPI_INTERFACES_KITS_NAPI_NATIVE_NODE_API_H */ diff --git a/interfaces/kits/napi/native_api.h b/interfaces/kits/napi/native_api.h index 35751a557161f90b886b1341634f94a24a7838c2..dde3e5119859fe5c00a8b32d994fa357c30da7bc 100644 --- a/interfaces/kits/napi/native_api.h +++ b/interfaces/kits/napi/native_api.h @@ -203,10 +203,6 @@ NAPI_EXTERN napi_status napi_switch_ark_context(napi_env env); NAPI_EXTERN napi_status napi_destroy_ark_context(napi_env env); -NAPI_EXTERN napi_status napi_queue_async_work_with_queue(napi_env env, - napi_async_work work, - napi_qos_t qos, - uintptr_t taskId); #ifdef __cplusplus } #endif diff --git a/native_engine/native_api.cpp b/native_engine/native_api.cpp index aa8b8eb4edf6c4bdff19c4011a698f0ced9c3af2..3f5caae00a73ed03d315ac91533bf2fd07f481a3 100644 --- a/native_engine/native_api.cpp +++ b/native_engine/native_api.cpp @@ -4207,24 +4207,6 @@ NAPI_EXTERN napi_status napi_queue_async_work_with_qos(napi_env env, napi_async_ return napi_status::napi_ok; } -NAPI_EXTERN napi_status napi_queue_async_work_with_queue(napi_env env, - napi_async_work work, - napi_qos_t qos, - uintptr_t taskId) -{ - CHECK_ENV(env); - CHECK_ARG(env, work); - RETURN_STATUS_IF_FALSE(env, taskId != 0, napi_invalid_arg); - - auto asyncWork = reinterpret_cast(work); - bool res = asyncWork->QueueOrdered(reinterpret_cast(env), qos, taskId); - if (!res) { - HILOG_ERROR("QueueOrdered failed, taskId: %{public}p", (void*)taskId); - return napi_status::napi_generic_failure; - } - return napi_status::napi_ok; -} - static void* DetachFuncCallback(void* engine, void* object, void* hint, void* detachData) { if (detachData == nullptr || (engine == nullptr || object == nullptr)) { diff --git a/native_engine/native_node_api.cpp b/native_engine/native_node_api.cpp index 3fb1b0d89ca1d5fbab52be6c0c908ce363bb073a..103717023b3f952175a975db99ed518c13a9bf17 100644 --- a/native_engine/native_node_api.cpp +++ b/native_engine/native_node_api.cpp @@ -644,3 +644,22 @@ NAPI_EXTERN napi_status napi_set_module_validate_callback(napi_module_validate_c } return napi_generic_failure; } + +NAPI_EXTERN napi_status napi_queue_async_work_with_queue(napi_env env, + napi_async_work work, + napi_qos_t qos, + uintptr_t taskId) +{ + CHECK_ENV(env); + CHECK_ARG(env, work); + RETURN_STATUS_IF_FALSE(env, taskId != 0, napi_invalid_arg); + + auto asyncWork = reinterpret_cast(work); + bool res = asyncWork->QueueOrdered(reinterpret_cast(env), qos, taskId); + if (!res) { + HILOG_ERROR("QueueOrdered failed, taskId: %{public}p", (void*)taskId); + return napi_status::napi_generic_failure; + } + return napi_status::napi_ok; +} +