有谁知道napi多函数导出写法

有谁知道napi多函数导出写法

HarmonyOS
2024-01-31 18:42:43
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fldj

可以通过头文件引入不同的.h文件,参考如下示例:

#include <hilog/log.h> 
#include "manager/plugin_manager.h" 
#include "common/common.h" 
EXTERN_C_START 
static napi_value Init(napi_env env, napi_value exports) 
{ 
    OH_LOG_Print(LOG_APP, LOG_INFO, LOG_PRINT_DOMAIN, "Init", "Init begins"); 
    if ((nullptr == env) || (nullptr == exports)) { 
        OH_LOG_Print(LOG_APP, LOG_ERROR, LOG_PRINT_DOMAIN, "Init", "env or exports is null"); 
        return nullptr; 
    } 
    napi_property_descriptor desc[] = { 
        { "getContext", nullptr, PluginManager::GetContext, nullptr, nullptr, nullptr, napi_default, nullptr } 
    }; 
    if (napi_ok != napi_define_properties(env, exports, sizeof(desc) / sizeof(desc[0]), desc)) { 
        OH_LOG_Print(LOG_APP, LOG_ERROR, LOG_PRINT_DOMAIN, "Init", "napi_define_properties failed"); 
        return nullptr; 
    } 
    PluginManager::GetInstance()->Export(env, exports); 
    return exports; 
} 
EXTERN_C_END 
static napi_module nativerenderModule = { 
    .nm_version = 1, 
    .nm_flags = 0, 
    .nm_filename = nullptr, 
    .nm_register_func = Init, 
    .nm_modname = "nativerender", 
    .nm_priv = ((void *)0), 
    .reserved = { 0 } 
}; 
extern "C" __attribute__((constructor)) void RegisterModule(void) 
{ 
    napi_module_register(&nativerenderModule); 
}
分享
微博
QQ
微信
回复
2024-02-01 21:41:38
相关问题
有谁知道如何屏蔽指触控
1859浏览 • 1回复 待解决
同进程Hap问题 ,有谁知道吗?
1324浏览 • 1回复 待解决
有谁知道如何创建 JSONObject
267浏览 • 1回复 待解决
有谁知道flexBasis使用问题
754浏览 • 1回复 待解决
有谁知道如何生成UUID
1523浏览 • 1回复 待解决
有谁知道如何主动关闭应用
1777浏览 • 1回复 待解决
有谁知道应用升级的方式
1613浏览 • 1回复 待解决
有谁知道如何理解栅格布局
321浏览 • 1回复 待解决
有谁知道沙箱目录怎么获取
2211浏览 • 1回复 待解决
有谁知道Image图片取反色
1977浏览 • 1回复 待解决
有谁知道常用AppFreeze使用指导
921浏览 • 1回复 待解决
有谁知道如何强制退出app?
311浏览 • 1回复 待解决
有谁知道是否支持帧动画
2205浏览 • 1回复 待解决
有谁知道如何获取IMEI码
1935浏览 • 1回复 待解决
有谁知道如何屏蔽触摸事件
1647浏览 • 1回复 待解决
有谁知道an\ai文件是什么
1772浏览 • 1回复 待解决
有谁知道如何监听屏幕旋转
1972浏览 • 1回复 待解决
有谁知道如何计算文本的宽度
2119浏览 • 1回复 待解决
有谁知道如何获取应用包信息
1675浏览 • 1回复 待解决
有谁知道web组件如何下拉刷新
1911浏览 • 1回复 待解决
vp、fp、px的区别,有谁知道
2116浏览 • 1回复 待解决
有谁知道有没有类似lodash库
2124浏览 • 1回复 待解决
有谁知道如何注册app的页面
320浏览 • 1回复 待解决
有谁知道如何访问沙盒路径
467浏览 • 1回复 待解决
有谁知道是否支持Emoj表情包
1896浏览 • 1回复 待解决