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

优秀个人网站网络营销推广公司简介

优秀个人网站,网络营销推广公司简介,做网站收费 知乎,编程自己做网站文章目录 Native适配开发三方库的基本使用 🏡作者主页:点击! 🤖HarmonyOS专栏:点击! ⏰️创作时间:2024年12月09日11点12分 Native适配开发 Node-API HarmonyOS Node-API 是 HarmonyOS 提供的…

文章目录

    • Native适配开发
    • 三方库的基本使用

https://i-blog.csdnimg.cn/blog_migrate/58966ddd9b29aabe8841f5ec34f0d31c.gif

🏡作者主页:点击!

🤖HarmonyOS专栏:点击!

⏰️创作时间:2024年12月09日11点12分

在这里插入图片描述

Native适配开发

Node-API

HarmonyOS Node-API 是 HarmonyOS 提供的ArkTS JS C C++ 跨语言调用的接口,在Node.js提供的Node-API基础上扩展而来的,但与其并不完全兼容

  • ArkTS Native Module 是提供给开发者使用 Node-API开发的模块,主要用于实现 Native 侧业务逻辑
  • ModuleManager:管理对象模块,ArkTS调用C++时,会加载Native侧到ModuleManager,转换为ArkTS对象返回上层
  • ScopeManager:用于管理 napi_value 生命周期,napi_value 是Node-API独特的数据类型,类似于ArkTS 中的 number、string等各种数据类型的统一表现形式,在 Native 代码开发中不需要感知不同的数据类型,统一都是 napi_value
  • ReferenceManager:用于管理引用,开发时遇到的跨进程场景,这时就需要创建引用 napi_ref,否则就会被垃圾回收掉。napi_ref用于指向napi_value,允许用户管理 napi_value 的生命周期
  • Native Engine作用主要统一ArkTS引擎在 Node-API 接口行为

Node-API关键交互流程

  • 模块初始化
    1. ArkTS侧在import一个so库的时候,先找到ArkTS引擎,之后会加载模块到 ModuleManager,对应就是dlopen函数注意:知识首次调用时加载,多次import会去缓存找
    2. 之后ModuleManager把模块信息返回ArkTS引擎。
    3. ArkTS拿到模块信息后,在native层触发模块注册,初始化模块,之后调用C++的方法
  • 函数调用
    1. ArkTS通过上述import返回对象调用方法,ArkTS引擎会找到并调用对应的C/C++方法

Node-API数据类型

  • napi_status:枚举数据类型
  • napi_value:独特的数据类型,类似于ArkTS中的number、String类型
  • napi_env:表示Node-API执行时上下文,传递函数中Node-API接口。退出Native侧时,napi_env将失效
  • napi_callback_info:native侧函数的入参,保存ArkTS侧参数信息,传递给napi_get_cb_info()函数获取ArkTS侧入参信息

Node-API接口

  • napi_get_cb_info:给定的napi_callback_info 中获取有关调用的详细信息
  • napi_get_value_double:获取给定ArkTS的number类型值
  • napi_create_string_utf8:通过UTF8编码的C字符串数据创建ArkTS侧string类型的数据

Node-API典型场景开发

使用Node-API进行同步任务开发

  • 应用侧在调用Native接口后,将会被阻塞等待Native侧计算结果

使用Node-API进行异步任务开发

  • 应用侧在调用Native接口后,会收到临时结果,并继续执行UI操作,Native侧将异步执行业务逻辑,不阻塞应用侧

使用Node-API进行线程安全开发

  • ArkTS天然线程安全,而Native侧代码需要开发者自行保障线程安全,Native侧C++子线程不可跨线程直接访问 ArkTS 对象
  • Node-API提供了可保障线程异步执行与通信安全的机制——线程安全函数

三方库的基本使用

ohpm下载

ohpm安装完成之后在安装的根目录下面 oh-package.json5文件中可找到 @ohos/lottie的配置信息,在oh_modules下的 @ohos 目录找到包的存放位置

  • 构建渲染上下文:renderingContext为构建的上下文
  • 准备JSON文件文件中描述了动画具体路径
  • 关联画布,创建Canvas,绑定renderingContext,并且需要给画布设置一个初始图片背景
  • 加载动画,传入之前定义的 Canvas、上下文、JSON文件
http://www.hkea.cn/news/74158/

相关文章:

  • 烟台网站建设诚信臻动传媒百度网络营销中心
  • 贵阳网站建设搜王道下拉重庆seo网络推广关键词
  • 大型 网站的建设 阶段百度官方网站下载
  • 江苏专业做网站的公司百度地图导航网页版
  • 怎么去投诉做网站的公司宁波seo外包推广软件
  • 网络营销跟做网站有什么区别线上推广如何引流
  • 如何进行网店推广seo排名优化怎样
  • 什么建站程序好收录上海网络公司seo
  • 电子商务网站建设投资预算小程序平台
  • 广州外贸营销型网站成都移动seo
  • 如何韩国视频网站模板下载 迅雷下载sem竞价托管费用
  • 做网站去哪个平台seo培训学院
  • 网站移动端优化的重点有哪些营销策略ppt
  • 养车网站开发搜狗seo快速排名公司
  • 企业电子商务网站建设武汉百度快速排名提升
  • 建一个网站的流程今天刚刚发生的新闻
  • 建立网站请示优化服务是什么意思
  • 有一个做场景动画的网站山东seo费用多少
  • 阿里云服务器的网站备案流程图营销推广有哪些形式
  • 做宣传用什么网站好手游推广平台有哪些
  • 免费全国网站在线客服软件新手电商运营从哪开始学
  • 0317网站建设怎么建个网站
  • 做网站做电脑版还是手机版好电话营销
  • 深圳网站建设 设计搜索引擎的工作原理是什么?
  • 在线网站设计百度收录查询方法
  • 最新体育新闻足球百度seo收费
  • 手机网站做跳转好吗个人在百度上发广告怎么发
  • 民宿网站的建设最近热搜新闻事件
  • 企业网站建设的核心是企业推广视频
  • 设计素材网站蜂产品推广文章