• 2024-12-21掌握DevEco Studio这一功能,高效实现ArkTS与C++胶水代码
    掌握DevEcoStudio这一功能,高效实现ArkTS与C++胶水代码1、背景介绍HarmonyOS主要提供了ArkTS与C++作为开发语言:ArkTS是HarmonyOS优选的主力应用开发语言。ArkTS围绕应用开发在TypeScript(简称TS)生态基础上做了进一步扩展,保持了TS的基本风格,同时通过规范定义强化开发期静
  • 2024-12-14html中表格的width和height的值为什么没有单位?它的的默认单位是像素吗?
    在HTML中,当你为(<td>、<th>)或其他HTML元素设置width和height属性时,确实可以不带单位。在这种情况下,浏览器默认使用像素(px)作为单位。示例<tablewidth="500"height="300"><tr><td>单元格内容</td></tr></table>在这个例子中,表格的宽度被设置为500像素,高度
  • 2024-12-14你喜欢Sass还是Less?为什么?
    在前端开发中,Sass(SyntacticallyAwesomeStylesheets)和Less(LeanerStyleSheets)都是非常流行的CSS预处理器,它们各自都有一些优点和特性。以下是我对它们的偏好及其原因:我更倾向于使用Sass1.更成熟的生态系统Sass已经存在了很长时间,并且拥有一个非常活跃和成熟的社区。这意味
  • 2024-12-14开拓计划1 - 栈与队列
    开拓计划1-栈与队列栈与队列的概念及作用栈的概念Q:什么是栈?A:栈是一种后进先出(BIFO)的数据结构。栈的作用Q:栈有什么作用?A:只要满足栈的定义的场景都可以使用栈。eg:括号匹配,火车进站etc.计算后缀表达式时也会使用。队列的概念Q:什么是队列?A:队列是一种先进先
  • 2024-12-14在前端开发中,你有使用过二进制方面的知识吗?在哪些场景会用到?
    在前端开发中,二进制方面的知识是经常被使用到的,尤其是在处理文件、图像、音频、视频等大数据时。以下是一些具体的应用场景:1.文件上传与下载Blob对象:Blob(BinaryLargeObject)是WebAPI中用于表示不可变的原始数据的类文件对象。在前端开发中,Blob对象常用于处理二进制数据,如文
  • 2024-12-12C++实现希尔排序算法
    指定格式输入字母(字母间以空格分隔),按照希尔排序输出指定格式#include<iostream>#include<vector>#include<string>usingnamespacestd;voidshellSort(vector<string>&arr){ intn=arr.size(); //初始步长设置为数组长度的一半,后面逐步缩小步长直到值为1为止 for
  • 2024-12-06C# FileStream、StreamReader/Writer、MemoryStream
    提及文件流,不得不先说以下几个类FileStream,MemoryStream,NetWorkStream,StreamReader,StreamWriter,TextReader,TextWriter在用这些类之前,我们先来了解一下这些类的用途以及区别。先声明一个路径:string path=“D:/Stream/IO.txt”;一:FileStream类用途:主要用于对磁盘上文件的读写,常
  • 2024-11-27测试与发布(Alpha版本)
    Alpha版本测试报告1.测试过程使用的测试函数2.测试结果2.1Bug项目中发现的BugBug类型Bug数量已修复的Bug5不能重现的Bug1产品设计1无法修复的Bug1下一版本修复的Bug1已修复Bug:部分文字显示出错部分选项无法选中商品分页功能不完善,出现负
  • 2024-11-26一个包含了 50+ C#/.NET编程技巧实战练习教程
    DotNetExercises介绍DotNetGuide专栏C#/.NET/.NETCore编程技巧练习集:C#/.NET/.NETCore编程常用语法、算法、技巧、中间件、类库、工作业务实操练习集,配套详细的文章教程讲解,助你快速掌握C#/.NET/.NETCore中各种编程常用语法、算法、技巧、中间件、类库、工作业务实操等等。G
  • 2024-09-27鸿蒙(HarmonyOS)实战开发篇——基于Napi调用ArkTS/系统接口
    场景描述:app应用在native侧调用系统库/arkts模块的方法。应用经常会遇到如下的业务诉求:场景一:系统提供了ArkTS接口,但未提供对应的NDK接口,当伙伴使用C++代码实现业务逻辑时,部分系统能力需要依赖系统ArkTS接口;场景二:系统仅提供了ArkTS异步接口,未提供对应的NDK接口,当
  • 2024-09-08【最新鸿蒙开发】带你简单了解Native适配开发
    引言NDK(NativeDevelopmentKit)是HarmonyOSSDK提供的NativeAPI、相应编译脚本和编译工具链的集合,方便开发者使用C或C++语言实现应用的关键功能。NDK只覆盖了HarmonyOS一些基础的底层能力,如C运行时基础库libc、图形库、窗口系统、多媒体、压缩库、面向ArkTS/JS与C跨语言的Nod
  • 2024-09-04HarmonyOS Node-API支持的数据类型
    一、Node-API的数据类型 1、napi_status        是一个枚举数据类型,表示Node-API接口返回的状态信息。每当调用一个Node-API函数,都会返回该值,表示操作成功与否的相关信息。typedefenum{napi_ok,napi_invalid_arg,napi_object_expected,napi_
  • 2024-09-02HarmonyOS实战开发:NAPI接口规范开发
    简介NAPI(NativeAPI)组件是一套对外接口基于Node.jsN-API规范开发的原生模块扩展开发框架。图1 NAPI组件架构图NativeEngineJS引擎抽象层,统一JS引擎在NAPI层的接口行为。ModuleManager管理模块,用于模块加载、模块信息缓存。ScopeManager管理NativeValue的生命周
  • 2024-09-01HarmonyOS开发实战:ArkTS接口绑定
    场景介绍通过napi_wrap将ArkTS对象与Native的C++对象绑定,后续操作时再通过napi_unwrap将ArkTS对象绑定的C++对象取出,并对其进行操作。使用示例接口声明、编译配置以及模块注册接口声明//index.d.tsexportclassMyObject{constructor(arg:number);plusOne:(
  • 2024-08-07HarmonyOS 音视频之音频采集实战
    HarmonyOS音视频之音频采集实战背景应用开发过程中很多场景都有音频采集需求,比如聊天功能的发送语音功能,实时语音转文本功能,实时语音通话,实时视频通话等。在Android和iOS端,系统提供了两种形式:实时音频流采集音频文件录制系统还提供了不同形式的API,比如Android:AudioRec
  • 2024-07-22GMSSL2.x编译鸿蒙静态库和动态库及使用
    一、编译环境准备1.1开发工具DevEco-Studio下载。1.2SDK下载​ 下载编译第三方库的SDK有两种方式,第一种方式从官方渠道根据电脑系统选择对应的SDK版本,第二种方式通过DevEco-Studio下载SDK。本文只介绍通过DevEco-Studio下载SDK的方式。安装SDK到本地根据SDK安装位
  • 2024-07-05使用napi实现ts枚举类型
    在napi模块中定义枚举类型枚举类型不是js的原生类型,它是ts中独有的语法,但是napi方法仅支持操作js对象。下文将提供一个demo用来实现一个js的enum类。分析ts枚举类的实现方式定义一个ts枚举类TypeScript代码如下:enumEnumClass{VAL_A=0,VAL_B,VAL_C,}
  • 2024-06-12用Napi编写nodejs Addon并调用dll
    用Napi编写nodejsAddon并调用dllnpdejs调用C++addon并没有先前那篇随笔那么复杂,这是一篇补充说明:说明如何使用c++项目的include头文件以及lib,dll引入到addon内使用一、使用VS编写DLL导出项目步骤1:通过VisualStudio(推荐2019及其以上)新建一个“具有导出项的(DLL)动态链接库
  • 2024-04-20HarmonyOS NEXT应用开发—在Native侧实现进度通知功能
    介绍本示例通过模拟下载场景介绍如何将Native的进度信息实时同步到ArkTS侧。效果图预览使用说明点击“StartDownload“按钮后,Native侧启动子线程模拟下载任务Native侧启动子线程模拟下载,并通过Arkts的回调函数将进度信息实时传递到Arkts侧实现思路前端进度条使用Progr
  • 2024-04-18HarmonyOS NEXT应用开发之使用AKI轻松实现跨语言调用
    介绍针对JS与C/C++跨语言访问场景,NAPI使用比较繁琐。而AKI提供了极简语法糖使用方式,一行代码完成JS与C/C++的无障碍跨语言互调,使用方便。本示例将介绍使用AKI编写C++跨线程调用JS函数场景。通过调用C++全局函数,创建子线程来调用JS函数,实现对变量value的加10操作,为开发者使用AKI提
  • 2024-04-13某函数传参
    在N-API中直接从一个函数向另一个函数传递参数稍微有点复杂,因为你需要正确地处理napi_value数组和环境(napi_env)。如果你想在一个N-API函数(CallAddFunction)中构造参数并直接调用另一个N-API函数(GetAddCheckArg),并且管理这些参数的传递,你将需要手动构建一个新的na
  • 2024-04-07鸿蒙Native输出so动态库,并提供给第三方导入使用
    前言:DevEcoStudio版本:4.0.0.600API:9最近在学习鸿蒙的Native输出so动态库,下面就给大家分享下我的学习心得及在实现过程中遇到的问题。实现需求:通过so库输出文本内容“你好,鸿蒙!”参考资料:OpenHarmonyNativeAPI实现过程:1、创建Native工程File-->New-->createProject