napi

千里马-horse1 个月前
开发语言·javascript·c++·node.js·napi
TypedArrayOfNapi::TypedArrayOf<T> 类继承自 Napi::TypedArray 类。Napi::TypedArrayOf 类对应 JavaScript 中的各类 TypedArray 类。
千里马-horse1 个月前
c++·node.js·napi·callbackinfo
CallbackInfo表示正在进行的 JavaScript 请求的组件的对象。Napi::CallbackInfo对象通常由 Node.js 运行时或 node-addon-api 基础设施创建并传递。
千里马-horse1 个月前
c++·node.js·napi
Checker Toolnode-addon-api 提供了一个检查工具,它会检查给定的目录树,识别其中所有的 Node.js 原生插件,并进一步指出每个插件是否为 Node-API 插件。
千里马-horse1 个月前
napi·addon
Add-on StructureNapi::Addon<T>类继承自Napi::InstanceWrap<T>类。创建能在从同一源包多次加载到多个 Node.js 线程和 / 或多次加载到同一 Node.js 线程时正常工作的插件,要求它们所持有的所有全局数据都必须与运行它们的环境相关联。将全局数据存储在静态变量中是不安全的,因为这样做没有考虑到插件可能被加载到多个线程中,也没有考虑到插件可能在单个线程中被多次加载。
千里马-horse1 个月前
napi
node-addon-api 简介node-addon-api,是一个为 Node.js 扩展开发提供的 C++ 头文件库,主要用于简化基于 Node-API(Node.js 提供的 C 语言 API)的 C++ 扩展开发。以下是其核心信息介绍:
千里马-horse1 个月前
开发语言·bigint·napi·addon
BigInt类 Napi::Bigint 继承自类 Napi::Value。表示一个 JavaScript BigInt 值。
千里马-horse1 个月前
开发语言·前端·javascript·c++·napi·asynccontext
AsyncContextNapi::AsyncWorker类可能并非适用于所有场景。当使用其他任何异步机制时,引入新的Napi::AsyncContext类是必要的,以确保运行时能正确跟踪异步操作。Napi::AsyncContext类可传递给Napi::Function::MakeCallback()方法,以正确恢复正确的异步执行上下文。
千里马-horse1 个月前
开发语言·array·napi
Napi::ArrayNapi::Array类继承自Napi::Object类。数组是 JavaScript 数组的原生表示。Napi::Array是对表示 JavaScript 数组的napi_value的包装。
特立独行的猫a5 个月前
c语言·c++·harmonyos·napi·三方库·aki
C/C++三方库移植到HarmonyOS平台详细教程C/C++三方库移植是指将现有的C/C++库适配到HarmonyOS平台,使其能够在ArkTS应用中调用。移植的主要目的是:
特立独行的猫a5 个月前
c语言·c++·harmonyos·napi·三方库·aki
C/C++三方库移植到HarmonyOS平台详细教程(补充版so库和头文件形式)接上篇文章,上篇介绍了在有源码的情况下的编译。更多时候三方库的移植,可能只提供给你了arm64平台下的so库和头文件。那么如何移植到harmonyOS平台下呢?总结一句话就是利用so库和头文件,再封装成arkts侧能用的arkts接口,使用napi或者aki的方式。
御承扬9 个月前
华为·harmonyos·napi·鸿蒙ndk
从零开始开发纯血鸿蒙应用之NAPI一如上图所示,鸿蒙系统是支持原生开发的,即直接在项目工程里面集成C/C++代码,在术语上,将此类使用C/C++代码实现功能的模块,称之为NDK(Native Development Kit 模块。
轻口味1 年前
c++·华为·harmonyos·napi·harmonyos-next
HarmonyOS Next构建工具 lycium 原理介绍HarmonyOS Next中很多系统API是以C++接口提供,如果要使用C++接口,必须要使用NAPI在ArkTS与C++间交互,这种场景在使用DevEco-Studio中集成的交叉编译工具,以及cmake构建工具就完全够用了。但是针对一些三方库迁移的场景,比如ffmpeg、openssl等,如果自己配置编译环境和脚本比较麻烦,进行交叉编译的过程中较关注的问题是:不同编译构建方式如何进行交叉编译、不同的编译构建平台如何配置交叉编译的环境、不同的交叉编译架构如何配置以及交叉编译后的产物如何进行测试验证。当
轻口味1 年前
c++·华为·架构·harmonyos·napi·harmonyos-next
【HarmonyOS NAPI 深度探索10】HarmonyOS Next 中的 NAPI 的架构与原理在 HarmonyOS Next 中,NAPI(Native API)扮演着关键角色,帮助开发者在 JavaScript 与 C/C++ 的世界中架起桥梁。了解其架构和工作原理,不仅有助于我们编写更高效的模块,也能更深入地理解系统底层的运行机制。今天,我们就来一起深入探讨 HarmonyOS Next 中的 NAPI 架构与原理。
轻口味1 年前
javascript·c++·交互·harmonyos·napi·harmonyos-next
【HarmonyOS NAPI 深度探索7】N-API 数据处理:与 JavaScript 数据的交互在开发原生模块时,一个核心的需求就是与 JavaScript 数据交互。N-API 提供了丰富的工具,让你能够方便地处理各种类型的数据,从基础的字符串、数字到复杂的对象和数组。本文我们将通过实例化讲解如何在 N-API 中进行数据处理。
轻口味1 年前
c++·华为·harmonyos·napi·harmonyos-next
【HarmonyOS NAPI 深度探索6】使用 N-API 创建第一个 Hello World 原生模块开发一个 N-API 模块听起来可能有点技术感十足,但实际上入门并不复杂。本文,我们来一步步实现一个简单的 Hello World 原生模块,感受一下 N-API 开发的魅力,为HarmonyOS Next中使用C++接口做知识储备。
轻口味1 年前
c++·华为·npm·harmonyos·napi·harmonyos-next
【HarmonyOS NAPI 深度探索9】发布到 npm 并管理版本开发了一个强大的 N-API 模块后,下一步就是将它发布到 npm,让更多开发者可以使用。同时,随着模块的更新迭代,版本管理也非常重要。今天,我们将讲解如何将 N-API 模块发布到 npm,并通过版本号管理来维护模块的稳定性和新功能。
轻口味1 年前
c++·node.js·harmonyos·harmonyos next·napi
【HarmonyOS NAPI 深度探索4】安装开发环境(Node.js、C++ 编译器、node-gyp)要使用 N-API 开发原生模块,第一步就是配置好开发环境。虽然HarmonyOS Next中提供了DevEco-Studio一站式IDE,可以直接帮助我们完成开发环境的搭建,但是为了更深入的了解NAPI,我们用最原始的编译工具一步一步搭建编译环境。这个可能有点复杂和繁琐,下面我们一步一步来完成。我们需要安装以下工具:
轻口味1 年前
c++·harmonyos·harmonyos next·napi·harmonyos-next
【HarmonyOS Next NAPI 深度探索1】Node.js 和 CC++ 原生扩展简介如果你用过 Node.js,应该知道它强大的地方在于能处理各种场景,速度还很快。但你有没有想过,Node.js 的速度秘密是什么?今天我们来聊聊其中一个幕后英雄——原生扩展,特别是如何通过 C/C++ 把 JavaScript 的能力进一步放大。
CrazyMo_2 年前
开发语言·javascript·typescript·harmonyos·napi
OpenHarmony 入门——初识JS/ArkTS 侧的“JNI” NAPI 常见的函数详解(二)前面一篇文章OpenHarmony 入门——初识JS/ArkTS 侧的“JNI” NAPI(一)介绍了NAPI的基础理论知识,今天重点介绍下NAPI中重要的函数。
Android小贾2 年前
ffmpeg·音视频·harmonyos·鸿蒙·鸿蒙系统·openharmony·napi
如何通过OpenHarmony系统中集成的ffmpeg库和NAPI机制,实现更多的多媒体功能?OpenAtom OpenHarmony(以下简称“OpenHarmony”)作为“开源”世界的“连接器”,不断为智能社会的发展提供源源不断的“源动力”。深开鸿一直以来积极投身于OpenHarmony社区建设,不断推动开源事业的发展。