From ff4bd9cd855dca091a91ee4cf6aa76e292ed1cd6 Mon Sep 17 00:00:00 2001 From: JackLee <809262979@qq.com> Date: Mon, 23 Feb 2026 16:56:19 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=BC=96=E8=AF=91=E8=84=9A?= =?UTF-8?q?=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- entry/build-profile.json5 | 2 +- entry/src/main/cpp/CMakeLists.txt | 3 ++- entry/src/main/cpp/napi_init.cpp | 10 +++++----- entry/src/main/ets/pages/modelView.ets | 27 ++++++++++++-------------- 4 files changed, 20 insertions(+), 22 deletions(-) diff --git a/entry/build-profile.json5 b/entry/build-profile.json5 index 12b59e56..5340ac0a 100644 --- a/entry/build-profile.json5 +++ b/entry/build-profile.json5 @@ -38,7 +38,7 @@ }, "nativeLib": { "debugSymbol": { - "strip": true, + "strip": false, "exclude": [] } } diff --git a/entry/src/main/cpp/CMakeLists.txt b/entry/src/main/cpp/CMakeLists.txt index ad16d853..2f55406c 100644 --- a/entry/src/main/cpp/CMakeLists.txt +++ b/entry/src/main/cpp/CMakeLists.txt @@ -61,8 +61,9 @@ find_library(GLES-lib GLESv3) #System so set(SYSTEM_LIBS libace_napi.z.so libnative_window.so - hilog_ndk.z ace_ndk.z uv + hilog_ndk.z ace_ndk.z uv z ) + # 链接系统库 target_link_libraries(opencax PUBLIC ${SYSTEM_LIBS}) target_link_libraries(opencax PUBLIC diff --git a/entry/src/main/cpp/napi_init.cpp b/entry/src/main/cpp/napi_init.cpp index 36398272..fb77f12a 100644 --- a/entry/src/main/cpp/napi_init.cpp +++ b/entry/src/main/cpp/napi_init.cpp @@ -142,8 +142,8 @@ static napi_module OpenCAXModel = { .reserved = { 0 } }; -//extern "C" __attribute__((constructor)) -//void RegisterOpenCAXModule(void) -//{ -// napi_module_register(&OpenCAXModel); -//} +extern "C" __attribute__((constructor)) +void RegisterOpenCAXModule(void) +{ + napi_module_register(&OpenCAXModel); +} diff --git a/entry/src/main/ets/pages/modelView.ets b/entry/src/main/ets/pages/modelView.ets index b0f8dd57..ad1665b2 100644 --- a/entry/src/main/ets/pages/modelView.ets +++ b/entry/src/main/ets/pages/modelView.ets @@ -2,7 +2,7 @@ import { hilog } from '@kit.PerformanceAnalysisKit'; import fs from '@ohos.file.fs'; import fileIO from '@ohos.fileio'; import { Context } from '@kit.AbilityKit'; -//import OCCTRender from 'libocctrender.so'; +//import NaviteOCCT from 'libopencax.so'; const DOMAIN = 0x0000; const TAG = 'ModelView'; @@ -19,18 +19,6 @@ export struct ModelView { aboutToAppear() { this.copyRawFileToSandbox(); } - async loadNativeLibrary() { - try { - let NaviteOCCT = await import("libopencax.so") - console.info(`[NDK] 模块类型: ${typeof NaviteOCCT}`); - console.info(`[NDK] 模块值: ${JSON.stringify(NaviteOCCT)}`); - console.info(`[NDK] 所有属性: ${Object.keys(NaviteOCCT).join(', ')}`); - if (!NaviteOCCT) throw new Error("模块为 undefined"); - } catch (e) { - console.error(`[NDK] 加载失败: ${e.message}`, e); - // 此处会触发你看到的错误 - } - } async copyRawFileToSandbox() { try { const context = getContext(this); @@ -70,8 +58,17 @@ export struct ModelView { hilog.error(0x0000, 'ModelView', `LoadModel Failed: ${JSON.stringify(e)}`); } }) - Button('测试模块加载').onClick(async()=>{ - this.loadNativeLibrary(); + Button('测试模块加载').onClick(()=>{ + try { + let NaviteOCCT = import("libopencax.so") + console.info(`[NDK] 模块类型: ${typeof NaviteOCCT}`); + console.info(`[NDK] 模块值: ${JSON.stringify(NaviteOCCT)}`); + console.info(`[NDK] 所有属性: ${Object.keys(NaviteOCCT).join(', ')}`); + if (!NaviteOCCT) throw new Error("模块为 undefined"); + } catch (e) { + console.error(`[NDK] 加载失败: ${e.message}`, e); + // 此处会触发你看到的错误 + } }) Button('测试so是否存在').onClick(()=>{ try {