当前位置: 首页 > news >正文

高米店网站建设网络系统管理学什么

高米店网站建设,网络系统管理学什么,湖州服装网站建设,关闭wordpress更新提示【HarmonyOS NAPI 深度探索12】创建你的第一个 HarmonyOS NAPI 模块 在本篇文章中#xff0c;我们将一步步走过如何创建一个简单的 HarmonyOS NAPI 模块。通过这个模块#xff0c;你将能够更好地理解 NAPI 的工作原理#xff0c;并在你的应用中开始使用 C 与 JavaScript 的…【HarmonyOS NAPI 深度探索12】创建你的第一个 HarmonyOS NAPI 模块 在本篇文章中我们将一步步走过如何创建一个简单的 HarmonyOS NAPI 模块。通过这个模块你将能够更好地理解 NAPI 的工作原理并在你的应用中开始使用 C 与 JavaScript 的交互。我们将从头开始创建帮助你快速入门。 准备工作 首先确保你已经完成了前面的环境搭建和 DevEco Studio 的安装。如果还没有可以参考我们之前的教程进行安装并确保你能够在 DevEco Studio 中正常创建项目。 创建项目 启动 DevEco Studio 打开 DevEco Studio进入主界面后点击 File New Project选择 Native C 选择开发平台 输入项目名称例如 MyFirstNapiModule以及包名、项目位置、编译SDK版本模块名称默认entry以及设备类型目前支持 PhoneTablet2in1Car 默认已勾选了前三个 项目结构概览 项目创建后在entry下你会看到一个基本的项目结构。关键部分包括 cpp/napi_init.cpp 文件 C 代码。cpp/types 文件夹动态库声明以及接口声明。CMakeList.txt用于构建C的配置文件。 编写 C 模块代码 编辑 C 代码 在 napi_init.cpp 文件下实现了一个简单的加法运算示例通过TS传入两个数字C中相加后返回到TS。代码如下 #include napi/native_api.h static napi_value Add(napi_env env, napi_callback_info info) { size_t argc 2; napi_value args[2] {nullptr}; napi_get_cb_info(env, info, argc, args , nullptr, nullptr); napi_valuetype valuetype0; napi_typeof(env, args[0], valuetype0); napi_valuetype valuetype1; napi_typeof(env, args[1], valuetype1); double value0; napi_get_value_double(env, args[0], value0); double value1; napi_get_value_double(env, args[1], value1); napi_value sum; napi_create_double(env, value0 value1, sum); return sum; } EXTERN_C_START static napi_value Init(napi_env env, napi_value exports) { napi_property_descriptor desc[] { { add, nullptr, Add, nullptr, nullptr, nullptr, napi_default, nullptr } }; napi_define_properties(env, exports, sizeof(desc) / sizeof(desc[0]), desc); return exports; } EXTERN_C_END static napi_module demoModule { .nm_version 1, .nm_flags 0, .nm_filename nullptr, .nm_register_func Init, .nm_modname entry, .nm_priv ((void*)0), .reserved { 0 }, }; extern C __attribute__((constructor)) void RegisterEntryModule(void) { napi_module_register(demoModule); }这段代码中我们定义了一个简单的 Add 函数它将最后相加结果返回给 JavaScript 层。配置 CMakeLists.txt 确保你的 CMakeLists.txt 文件包含正确的配置来编译和链接你的原生模块。一个基本的 CMakeLists.txt 配置如下 # the minimum version of CMake. cmake_minimum_required(VERSION 3.5.0) project(nativedemo) set(NATIVERENDER_ROOT_PATH ${CMAKE_CURRENT_SOURCE_DIR}) if(DEFINED PACKAGE_FIND_FILE) include(${PACKAGE_FIND_FILE}) endif() include_directories(${NATIVERENDER_ROOT_PATH} ${NATIVERENDER_ROOT_PATH}/include) add_library(entry SHARED napi_init.cpp) target_link_libraries(entry PUBLIC libace_napi.z.so)这个文件告诉 CMake 如何编译 C 代码并链接到 Node.js 库。编写 JavaScript 调用代码 在Index.ets文件中调用C提供的Add方法 代码如下 import { hilog } from kit.PerformanceAnalysisKit; import testNapi from libentry.so; Entry Component struct Index { State message: string Hello World; build() { Row() { Column() { Text(this.message) .fontSize(50) .fontWeight(FontWeight.Bold) .onClick(() { hilog.info(0x0000, testTag, Test NAPI 2 3 %{public}d, testNapi.add(2, 3)); }) } .width(100%) } .height(100%) } }这里我们通过 import testNapi from libentry.so 引入 C 模块并调用 add() 方法输入两个参数它会输出 C 中相加的结果。构建和调试 构建项目 在 DevEco Studio 中点击 Build Build ProjectDevEco Studio 会使用 CMake 编译 C 代码并生成共享库。构建成功后你会看到 BUILD SUCCESSFUL 的提示。 调试项目 在 DevEco Studio 中你可以设置断点并启动调试器查看 C 代码执行的详细过程。点击 Run Debug选择目标设备进行调试。 测试模块 运行 JavaScript 代码 运行项目点击Hello Word文字你应该能看到控制台输出 Test NAPI 2 3 5检查输出 如果一切正常说明你成功创建了第一个 HarmonyOS NAPI 模块并且能够从 JavaScript 中调用 C 函数。 总结 通过本篇教程我们已经成功创建了一个简单的 HarmonyOS NAPI 模块并从 JavaScript 调用它。通过 NAPI你可以方便地将 C 的高效性能与 TS的灵活性结合起来为你的 HarmonyOS 应用提供更强大的功能。
http://www.pierceye.com/news/806925/

相关文章:

  • 如何在建设银行网站预约纪念币东莞网站建设服务有什
  • 有哪些可以做h5的网站代理网址上境外网
  • 做网站所需要的代码6红杏直播
  • 南通制作网站wordpress移动版设置
  • 哪个网站有免费ppt下载建筑类网站的推荐理由
  • 视觉差的网站公司外包
  • 基础做网站内蒙住房和城乡建设部网站
  • 发帖效果好的网站展馆展示设计公司排名
  • 童装网站建设文案什么网站做的号
  • 能打开的a站莆田网站建设建站系统
  • 上海市城乡建设管理局网站一个月做网站
  • 网站后台管理系统 aspwordpress拖拽上传
  • 华为手机官方网站登录爬虫做视频网站
  • 山东省工程建设信息官方网站河南网站seo推广
  • 低成本做网站 白之家重庆市建设执业资格注册管理中心网站
  • 电子商务网站建设需求在别的公司做的网站可以转走吗
  • 网站流量怎么做乡1万做网站需要几个人
  • 阿里云centos7做网站怀化网站seo
  • 我做的网站怎样被百度收录易语言 做网站mysql
  • 花店网站模板免费下载9个做简历的网站
  • 东港区网站制作seo推广模式是什么
  • 用织梦做网站能练技术吗广州专业网络推广公司
  • 下载ppt模板免费的网站在线做头像网站
  • 网络推广怎么免费做网站内部优化的方法
  • 沧州wap网站制作哈尔滨建设网证件查询
  • 一键查询注册过的网站快速排名教程
  • 响应式模板网站泰安招聘信息最新招聘2021
  • 信阳市住房和城乡建设厅网站wordpress加载速度
  • 建设本地网站 配置iis百度h5在线制作免费
  • 网站托管服务器做外贸去哪些网站找老外