- 博客(23)
- 收藏
- 关注
原创 【NAPI】ets接口常用代码记录
NAPI的概念源自Nodejs,为了实现javascript脚本与C++库之间的相互调用,Nodejs对V8引擎的api做了一层封装,称为NAPI。NAPI接口本身是C++语言实现的,这些接口可以帮助C++代码创建JS变量,或访问JavaScript运行环境中的JS变量与方法。所以,openharmony新增ets接口时,常会用到napi,下面即是常用的代码示例。类型的指针,以便访问传递过来的数据。打印napi_value里面所有字段的方法,方便定位。在上面的示例代码中,我们将要传递给子线程的。
2024-10-19 16:22:37
506
原创 【c++】编程考试基础(下)
就是递推式,前面说了,动态规划的基本思想是将问题转化为若干个子问题进行求解,如果通过这些子问题得出问题的最值,这个转化的数学公式就是状态转移方程。贪心选择性质、最优子结构性质(根据我的观察,很多贪心的题目会出现“不同的操作产生的贡献相同”的特征,在此特征下我们每次选择代价最小的。因为深搜基本上会遍历每一个结果,但与暴力法不同在于,深搜可以通过递归中不满足的条件,实现剪枝。将问题划分成若干个更简单的子问题进行求解,在划分的过程中,需要将问题分成若干份,即阶段;,每一个阶段的最值就是这个阶段的问题对应的状态;
2024-09-11 00:49:34
449
原创 【c++】编程基础(上)
wstring是宽字符,占用2个字节的大小,针对UNICODE编码格式,用于对中文汉字的定义和赋值。wstring跟string区别为:字节不同、编码格式不同、使用不同。1、wstring:wstring一般针对UNICODE编码格式,一个单元两个char。1、wstring:wstring是宽字符,占用2个字节的大小,即16bit。1、wstring:在使用中文汉字时,使用wstring来定义变量进行赋值。2、string:string是窄字符,占用1个字节的大小,即8bit。
2024-09-09 17:36:24
382
原创 【OpenHarmony】TDD用例
2)拷贝测试框架:将服务器的./test目录的developer_test和xdevice下载到本地TDD测试目录下。4)配置TDD测试套路径:在developer_test/config目录下的user_config.xml配置路径。2)进入developer_test目录下,执行start.bat脚本。1)将编译tdd的结果拷贝到本地自己创建的testcase目录下。3)确保本地hdc安装ok,python为3.7以上的版本。1)本地创建TDD测试目录:用于放置测试框架和测试用例。
2024-09-04 17:02:43
875
原创 【arkTs】应用文件共享采坑记录
手写个用于拷贝文件的可执行文件,然后放在/system/bin目录下,给予s权限,在应用1的native层去调用(操作的具体步骤如下)。最近在开发鸿蒙单框架的应用,要跨进程分享图片,图片已经保存到应用1的沙箱目录下,并将路径分享给应用2,但应用2仍旧取读不到图片,显示权限失败。因为只是做demo,本来是想将图片保存到共有目录下即可,让hdc和应用均可以访问,比如/data/local/tmp目录,但是单框架应用暂时没有此目录,此方法不可行。将生成的文件放在手机的/system/bin目录下。
2024-06-05 10:30:47
1005
原创 【arkTs】应用开发之http数据请求+调用大模型示例
【代码】【OpenHarmony】arkts应用开发之http数据请求+调用大模型示例。
2024-04-29 11:23:11
1490
原创 【OpenHarmony】使用手工编译的ohos-sdk
问题:修改了badge组件position属性,使其支持(x,y)坐标输入,但是previewer预览无效。
2023-07-05 15:33:34
2437
1
原创 【OpenHarmony】首次开发指南
模块编译(arkui):./build.sh --product-name rk3568 --build-target ace_engine --ccache (其他模块:graphic_standard)全量编译:bash build/prebuilts_download.sh && ./build.sh --product-name rk3568 --ccache。输出目录:./out/rk3568/arkui/ace_engine/【问题二】/data/log/hilog目录下没有日志信息。
2023-06-01 20:39:53
901
原创 【HDR学习】TextureView绘制流程分析(四)
越来越多的应用需要使用自己的绘制引擎进行复杂内容的绘制,比如需要使用 GL 绘制 3D 的内容,或者绘制复杂的文档,图表时不希望阻塞 UI 线程,或者部分内容是通过类似 Flutter 这样的第三方 UI Toolkit 进行绘制。通常这部分内容会通过 SurfaceView 或者 TextureView 呈现在 UI 界面上。
2023-04-28 10:53:47
3319
原创 【HDR学习】图片解码(三)
libheif是一个比较常见的 C++ 解析 heic 格式图片的开源库,可实现对HEIF和AVIF(AV1图像文件格式)文件格式解码和编码。HEIF和AVIF是新的图像文件格式,分别采用HEVC (h.265)或AV1图像编码,以获得目前可能的最佳压缩比。比如GIF、PNG、JPG,当然也支持BMP,还提供一些高级的可视化对象,比如渐变、图形等。3、调用图像视图的setImageDrawable,设置图像视图的图形对象;来完成一个简单的对 HEIC 格式图片的解析、解码的过程。
2023-04-26 16:33:25
886
原创 【HDR学习】利用SurfaceView显示图片
但它也有缺点,因为这个Surface不在View hierachy中,它的显示也不受View的属性控制,所以。SurfaceView属于View的子类它是专门为制作游戏而产生的,它的功能非常强大,最重要的是它支持OpenGL ES库,2D和3D的效果都可以实现。创建SurfaceView的时候需要实现SurfaceHolder.Callback接口,它可以用来监听SurfaceView的状态,比如:SurfaceView的改变 、SurfaceView的创建 、SurfaceView 销毁等。
2023-04-24 21:26:09
817
原创 【AndroidStudio问题记录】libheif三方库解析hdr图片,切换过程有卡顿
解决:使用多线程延迟加载avif图片,推荐使用。HandlerThread来开启线程。
2023-04-23 18:48:40
285
原创 【AndroidStudio问题记录】Error: Found item xxx more than one time解决方法
res/values/atts.xml文件中定义了isHardwareAccel属性。运行产生了Error: Found item Attr/tabTextSize more than one time,这句话的意思是错误:发现项目attr/isHardwareAccel定义不止一次。重复定义isHardwareAccel属性,将<attr name="isHardwareAccel" format="boolean"/>抽来,然后在每个View里面调用就可以了。
2023-04-21 17:45:50
1090
原创 【软件】Clion 安装和环境配置
注意:C:\Users\crdch\AppData\Local\Android\Sdk\ndk\23.0.7599858要跟随实际为准,即是2)提到的目录。如下图的配置,名称可以随便起,Toolchain那个配置,就是我们刚才配置的Toolchain。即1)图中的目录:C:\Users\crdch\AppData\Local\Android\Sdk\ndk\23.0.7599858。需要根据你的Android Studio SDK中的NDK配置改变而改变。3)CLion配置(NDK的关键,重要)
2023-04-14 01:40:17
1842
原创 【HDR学习】利用TextureView显示图片
demo场景:利用textureView实现图片显示,并更改其色彩空间(sRGB和DCI_P3)拼接显示。
2023-03-31 11:27:04
1080
原创 【HDR学习】苹果EDR技术洞察(二)
而 EDR(Extended Dynamic Range)是苹果推出的一套,以支持在不同的屏幕上同时正确显示 SDR 和 HDR 内容。当显示 HDR 的内容时,EDR 并不会直接将 HDR 区域变得更亮,而是识别到 HDR 内容后提高整体屏幕亮度的同时,降低非 HDR 区域的白点值,使得其看起来没有那么亮。SDR 的像素浮点数表示范围为[0.0, 1.0],其中 0.0 表示黑色,1.0 表示白色。在 EDR 的像素浮点数表示中,SDR 的部分映射到[0.0, 1.0]
2023-03-23 21:40:44
5571
原创 【HDR学习】HDR视频相关知识讲解(一)
由来:HDR首先作为静态摄影的一种技术而闻名于世。在静态摄影中,这种进行多次曝光并堆栈成一张暗部和亮部都有细节的图像的方法就是HDR摄影。随着科技的进步,人们观看影视的体验越来越好,这不仅体现在视频分辨率上,还体现在视频画质上。如今视频的分辨率越来越大,已经从720P、1080P逐渐向4K、8K发展,视频的画质也越来越逼真,逐渐从SDR视频向HDR视频发展。HDR扩展了SDR的显示范围,具有更宽的色彩范围,更亮的亮度上限和更黑的亮度下限。
2023-03-20 20:38:36
7405
原创 【git】git常用命令
一、常用命令git clone xxx.git仓库地址克隆分⽀git fetch 更新远程仓库分⽀信息到地址git checkout 切换或创建和远程同名本地分⽀git checkout -b origin //强制以远程指定分⽀创建本地分⽀(本地分⽀命令⾃定义)git push origin + 远程分支名字 //将本地分⽀提交⾄指定远程分⽀git pull origin develop + 远程分支名字 //更新代码git branch -D 删除本地分⽀,...
2022-05-23 19:30:08
5490
1
原创 【蓝牙】基于Android的蓝牙开发
Android的蓝牙API来完成的四个必要的主要任务,使用蓝牙进行设备通信,主要包含四个部分:蓝牙设置、搜索设备(配对的或可见的)、连接、传输数据。一、 基础知识1.蓝牙API所有的蓝牙API在android.bluetooth包中。实现这些功能主要需要下面这几个类和接口:BluetoothAdapter代表本地蓝牙适配器(蓝牙发射器),是所有蓝牙交互的入口。通过它可以搜索其它蓝牙设备,查询已经配对的设备列表,通过已知的MAC地址创建BluetoothDevice,创建Bluetooth.
2022-05-23 09:54:48
5039
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人