uni-app x正式支持鸿蒙原生应用开发
DCloud发布的HBuilderX 4.64正式版,支持编译uni-app x项目到鸿蒙平台,实现跨平台开发鸿蒙原生应用。至此,uni-app x 已经完成Android、iOS、鸿蒙、Web、微信小程序等主流平台全覆盖。
uni-app x,是下一代 uni-app,是一个原生的跨平台开发框架。
uni-app x 的革新性在于其“开发态基于Web技术栈,运行时编译为原生代码”的设计。开发者依然使用熟悉的Vue语法与类TypeScript的UTS语言编写代码,编译到鸿蒙平台时,代码会被转换为鸿蒙NEXT的原生语言ArkTS,并基于ArkUI渲染引擎运行,没有虚拟机、没有js引擎、没有webview,实现真正的系统原生性能。
欢迎使用鸿蒙手机扫描下方二维码,或去鸿蒙应用商店搜索“DCloud开发者中心系统”体验示例。
uni-app x的高性能得益于:
- 编译为原生语言
uni-app x编译器,可以将UTS语言直接编译为各个平台的原生代码:
- to Android:编译为kotlin代码
- to iOS:编译为swift代码
- to 鸿蒙:编译为ArkTS代码
- to Web和小程序:编译为js代码
- 运行时优化
基于不同平台的原生view封装为跨平台的、统一的原生UI库。
将不同平台的原生能力API,封装为统一的UTS插件,通过interface统一输入输出,形成了网络、文件系统、多媒体等大量统一的跨平台API。
由于逻辑层与视图层均在原生进程中运行,避免了跨语言通信的延迟问题,启动速度和交互流畅度可媲美原生开发。
这种设计让开发者既能享受Web技术栈的高效开发,又能获得原生应用的性能体验,真正实现“鱼与熊掌兼得”。
uni-app x的演示应用已上架鸿蒙应用商店,你可以通过单框架版本的纯血鸿蒙手机,在应用市场搜索“DCloud开发者中心系统”安装体验,该应用详细演示了uni-app x在鸿蒙平台上支持的各种组件、API、CSS以及部分模版示例。
在模板->slider100示例中,页面中有100个slider组件,拖动其中1个滑块,剩余99个滑块会同步移动。这非常考验逻辑层和视图层的通信性能。欢迎开发者使用相同示例在其他跨平台工具下比较,甚至可以用ArkUI的声明式写法来对比,看看哪个更丝滑。其他框架开发的经常会出现不跟手、掉帧的情况。
至此,DCloud面向鸿蒙平台,已正式发布uni双引擎,支持不同类型的开发者,快速开发鸿蒙应用:
- uni-app:基于经典的Hybrid App架构,逻辑层、视图层分离实现,使用webview渲染,对存量的uni-app项目开发者非常友好,帮助开发者以极低的代价,完成存量数字应用(包括基于uni-app开发的App、各家小程序、H5等)的鸿蒙化转换。
- uni-app x:基于语言翻译实现,开发态使用Web技术栈,运行态转为平台原生语言,使用原生组件和原生渲染,可以获得和原生开发一样的运行体验,更适合对性能体验要求更高的开发者。
站在2025年的技术拐点上,我们目睹了国产操作系统从愿景走向现实,在今日中国之背景下,鸿蒙适配已从“做不做”,升级为“怎么做”。
Android、iOS、鸿蒙、web、小程序,每个平台都可以各自开发一套。但这必然不是聪明的做法。开发者一直希望找到一款好的跨平台框架,而过去的跨平台框架的性能一直无法令大型开发者满意。Flutter独立运行虽然性能不错,但调用原生能力、嵌入原生组件时,性能又下降,并且flutter在鸿蒙上没有官方支持,dart生态的很多插件迁移不到鸿蒙上,实际开发效率较低。
uni-app x作为一个真正原生化的跨平台开发工具,让开发者不用再顾忌跨平台框架的性能问题,没有js引擎和webview渲染。在运行时都是原生编程语言、原生UI。调用操作系统能力、调用原生组件时,都没有跨语言通信、跨渲染引擎滚动,操作顺畅丝滑。
除了高性能外,生态非常重要。uni-app x除了自身提供大量组件和API外,还有丰富的插件生态。插件市场已经有数千款uni-app x的插件,其中不少插件已支持鸿蒙next。接下来DCloud还将举办2025年插件大赛,进一步活跃插件生态。详见:DCloud 插件市场 。
当然还需要强调一点,uni-app x中不用插件也可以调用鸿蒙系统原生的数万API,这与其他跨平台开发工具不同。其他跨平台工具都需要手动封装插件,插件数量不够会严重卡住开发进度。
下面代码示例看到,开发者在vue页面中可以直接引用ohos的系统库,因为其实这段vue代码最终也被编译运行到arkts引擎中,自然可以调用所有系统能力。
<template>
<!-- 页面模版代码 -->
</template><script>import deviceInfo from '@ohos.deviceInfo';export default {onLoad() {// 前端Vue页面,直接调用鸿蒙arkTS代码console.log("设备类型:" + deviceInfo.deviceType)console.log("设备厂家:" + deviceInfo.manufacture)}}
</script><style>
/* 样式代码 */
</style>
欢迎开发者使用 uni-app x开发鸿蒙原生应用。它可以帮助你使用简单易用的vue语法,更高效的完成应用开发,且不影响性能。
当鸿蒙版使用uni-app x后,你还可以同时渐进式重构之前的Android和iOS原生应用,在原生应用中引入uni-app x原生sdk,将部分页面模块跨端统一为uni-app x实现。
uni-app x的资源:
文档:https://doc.dcloud.net.cn/uni-app-x/ 。
示例体验:使用鸿蒙手机扫描下方二维码,或去鸿蒙应用商店搜索“DCloud开发者中心系统”。
相关文章:
uni-app x正式支持鸿蒙原生应用开发
DCloud发布的HBuilderX 4.64正式版,支持编译uni-app x项目到鸿蒙平台,实现跨平台开发鸿蒙原生应用。至此,uni-app x 已经完成Android、iOS、鸿蒙、Web、微信小程序等主流平台全覆盖。 uni-app x,是下一代 uni-app,是一…...
【软件推荐——pdf2docx】
pdf2docx Open source Python library for converting PDF to DOCX. https://github.com/ArtifexSoftware/pdf2docx Install pip install pdf2docx使用 from pdf2docx import Converterpdf_file D:\my\c4611_sample_explain.pdf docx_file D:\my\c4611_sample_explain.d…...
HarmonyOS开发组件基础
个人简介 👨💻个人主页: 魔术师 📖学习方向: 主攻前端方向,正逐渐往全栈发展 🚴个人状态: 研发工程师,现效力于政务服务网事业 🇨🇳人生格言&…...
JMeter 测试工具--组件--简单介绍
目录 编辑 一、测试计划(Test Plan) 二、线程组(Thread Group) 三、取样器(Sampler) 四、监听器(Listener) 五、逻辑控制器(Logic Controller) 六、断…...
ECPF 简介
ECPF(Embedded CPU Function,嵌入式CPU功能)是NVIDIA BlueField DPU特有的一种功能类型,和PF(Physical Function,物理功能)、VF(Virtual Function,虚拟功能)密…...
【Opencv】canny边缘检测提取中心坐标
采用opencv 对图像中的小球通过canny边缘检测的方式进行提取坐标 本文介绍了如何使用OpenCV对图像中的小球进行Canny边缘检测,并通过Zernike矩进行亚像素边缘检测,最终拟合椭圆以获取小球的精确坐标。首先,图像被转换为灰度图并进行高斯平滑…...
C#实现访问远程硬盘(附源码)
在现实场景中,我们经常用到远程桌面功能,而在某些场景下,我们需要使用类似的远程硬盘功能,这样能非常方便地操作对方电脑磁盘的目录、以及传送文件。那么,这样的远程硬盘功能要怎么实现了? 这次我们将给出…...
AI日报 · 2025年05月16日|Google DeepMind推出AlphaEvolve,能自主设计高级算法的编码代理
全球AI新闻日报 日期:2025年5月16日 目录 OpenAI与CoreWeave签署40亿美元新协议,GPT-4.1模型全面推出Google DeepMind推出AlphaEvolve,能自主设计高级算法的编码代理Anthropic律师因Claude模型虚构法律引用被迫道歉Meta推迟旗舰AI模型&quo…...
TCP/IP 知识体系
TCP/IP 知识体系 一、TCP/IP 定义 全称:Transmission Control Protocol/Internet Protocol(传输控制协议/网际协议)核心概念: 跨网络实现信息传输的协议簇(包含 TCP、IP、FTP、SMTP、UDP 等协议)因 TCP 和…...
记一次缓存填坑省市区级联获取的操作
先说缓存是什么? 缓存主要是解决高并发,大数据场景下,热点数据快速访问。缓存的原则首先保证数据的准确和最终数据一致,其次是距离用户越近越好,同步越及时越好。 再说我们遇到的场景: 接手项目后&#…...
【时空图神经网络 交通】相关模型2:STSGCN | 时空同步图卷积网络 | 空间相关性,时间相关性,空间-时间异质性
注:仅学习使用~ 前情提要: 【时空图神经网络 & 交通】相关模型1:STGCN | 完全卷积结构,高效的图卷积近似,瓶颈策略 | 时间门控卷积层:GLU(Gated Linear Unit),一种特殊的非线性门控单元目录 STSGCN-2020年1.1 背景1.2 模型1.2.1 问题背景:现有模型存在的问题1.2…...
uniapp实现在线pdf预览以及下载
uniapp实现在线pdf预览以及下载 在线预览 遇到的问题 后端返回一个url地址,我需要将在在页面中渲染出来。因为在浏览器栏上我输入url地址就可以直接预览pdf文件,因此直接的想法是通过web-view组件直接渲染。有什么问题呢?在h5端能够正常渲…...
【Rust闭包】rust语言闭包函数原理用法汇总与应用实战
✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,…...
裸金属服务器和云服务器之间的差别
裸金属服务器能够直接在硬件上运行,不需要额外的虚化层,让每个应用程序或者是服务都能够在实际的硬件上运行,不需要和其他虚拟服务器来共享资源;而云服务器作为一种虚拟服务器,是通过虚拟化技术为企业提供一个独立的计…...
CentOS系统中升级Python 3.12.2版本
在CentOS系统中升级Python版本是一项常见的操作,尤其是在需要使用较新功能或满足某些软件依赖的情况下。以下是详细的步骤和注意事项,帮助您顺利完成Python版本的升级。 1. 升级Python版本前的准备 在开始升级之前,请确保以下几点࿱…...
win10-django项目与mysql的基本增删改查
以下都是在win10系统下,django项目的orm框架对本地mysql的表的操作 models.py----->即表对应的类所在的位置 在表里新增数据 1.引入表对应的在models.py中的类class 2.在views.py中使用函数:类名.objects.create(字段名值,字段名"值"。。。…...
图像处理:预览并绘制图像细节
前言 因为最近在搞毕业论文的事情,要做出一下图像细节对比图,所以我这里写了两个脚本,一个用于框选并同时预览图像放大细节,可显示并返回框选图像的坐标,另外一个是输入框选图像的坐标并将放大的细节放置在图像中&…...
针对面试-微服务篇
1.Spring Cloud 5大组件有哪些? 随着SpringCloudAlibba在国内兴起,我们项目中使用了一些阿里巴巴的组件 注册中心/配置中心 Nacos 负载均衡 Ribbon 服务调用 Feign 服务保护 sentinel 服务网关 Gateway 2. 我看你之前也用过nacos、你能说下nacos与eureka的区别?…...
SRS流媒体服务器(5)源码分析之RTMP握手
1.概述 学习 RTMP 握手逻辑前,需明确两个核心问题: rtmp协议连接流程阶段rtmp简单握手和复杂握手区别 具体可以学习往期博客: RTMP协议分析_rtmp与264的关系-CSDN博客 2.rtmp握手源码分析 2.1 握手入口 根据SRS流媒体服务器(4)可知&am…...
线程池(ThreadPoolExecutor)实现原理和源码细节是Java高并发面试和实战开发的重点
一、线程池核心流程图 ----------------- | 提交任务 | submit/execute -----------------|v ----------------- | 判断核心线程数 | < corePoolSize? -----------------|Yes |Nov v [创建新线程] -----------------| 队列是否满&a…...
C# DataGridView 选中所有复选框
问题描述 在程序中尝试选中所有复选框,但出现错误。如果单击顶部的完整选中/释放复选框,同时选中包含复选框的列,则选定区域不会改变。该如何解决? 上面的图片是点击完整版本之后的。 下面是本文的测试代码,函数 dat…...
linux 服务器安装jira-8.22.0和confluence-8.5.21
前提: 下载资源包 z_atlassian-agent-v1.3.1.zip z_atlassian-confluence-8.5.21-x64.zip z_atlassian-jira-software-8.22.0-x64.zip z_jdk-8u131-linux-x64.tar.gz z_postgresql-12.0.tar.gz 可通过作者本身资源库下载 一:服务器构建文件夹 mkdir /z …...
【计算机网络】HTTP/1.0,HTTP/1.1,HTTP/2,HTTP/3汇总讲解,清晰表格整理面试重点对比
表格汇总 对比维度HTTP/1.0HTTP/1.1HTTP/2HTTP/3传输协议TCPTCPTCP/TLS(默认加密)UDP(基于 QUIC 协议)连接方式短连接(每次请求/响应后断开)引入持久连接(Persistent Connection)&a…...
Go语言之路————并发
Go语言之路————并发 前言协程管道SelectsyncWaitGroup锁 前言 我是一名多年Java开发人员,因为工作需要现在要学习go语言,Go语言之路是一个系列,记录着我从0开始接触Go,到后面能正常完成工作上的业务开发的过程,如…...
python的家教课程管理系统
目录 技术栈介绍具体实现截图系统设计研究方法:设计步骤设计流程核心代码部分展示研究方法详细视频演示试验方案论文大纲源码获取/详细视频演示 技术栈介绍 Django-SpringBoot-php-Node.js-flask 本课题的研究方法和研究步骤基本合理,难度适中…...
0x08.Redis 支持事务吗?如何实现?
回答重点 Redis 支持事务,但它的事务与 MySQL 等关系型数据库的事务有着本质区别。MySQL 中的事务严格遵循 ACID 特性,而 Redis 中的事务主要保证的是命令执行的原子性和隔离性,即所有命令在一个不可分割的操作中顺序执行,不会被其他客户端的命令请求所打断。 最关键的区…...
互联网应用的安全防线-身份证实名认证api-身份证三要素验证
随着联网技术的普及,互联网应用已深度渗透人们的生活,从购物下单到社交互动,从金融理财到在线教育,每一次的联网互动都隐藏着一个关乎安全与信任的“隐形卫士”-身份证实名认证接口功能。它如同数字世界的“电子身份证”ÿ…...
本地跑通vue-element-admin项目
GitHub - PanJiaChen/vue-element-admin: :tada: A magical vue admin https://panjiachen.github.io/vue-element-admin 通过加速clone到本地 git clone https://gitclone.com/github.com/PanJiaChen/vue-element-admin.git # 进入项目目录 cd vue-element-admin # 安装依赖…...
el-table表格列宽度自适应
需求:表格错误描述列 要求按照内容最大值设置宽度;如果没有值 则设置最小宽度 <el-table-columnv-else-if"item.prop errorDescription":key"item.code":width"flexColumnWidth(errorDescription, tableConfigA.tableDataA…...
Mysql存储过程(附案例)
文章目录 存储过程概述1、基本语法2、变量①、系统变量②、用户自定义变量③、局部变量 3、流程控制语句①、if语句②、参数③、case语句④、while语句⑤、repeat语句⑥、loop语句⑦、cursor游标⑧、handler 4、存储函数 存储过程概述 存储过程是事先经过编译并存储在数据…...
宇树科技申请 “机器人牌照” 商标,剑指机器人领域新高度
近日,据天眼查信息显示,杭州宇树科技有限公司有了一项重大举动,其申请注册了 “机器人牌照”“机牌”“Robot license”“Robot plate” 等商标,国际分类涉及科学仪器、运输工具、广告销售等多个领域,当前商标状态均为…...
计算机图形学基础--Games101笔记(一)数学基础与光栅化
数学基础 向量 点乘,叉乘和投影: 插值 三角形插值 **重心坐标:**我们通过任意点的重心坐标来插值。 V α V A β V B γ V C V\alpha V_A\beta V_B\gamma V_C VαVAβVBγVC。注意重心坐标没有投影不变性,如果插值三…...
Chrome拓展(Chrome Extension)开发定时任务插件
Chrome扩展定时任务插件开发指南 核心实现原理 使用Chrome Alarms API实现定时触发通过Service Worker保持后台运行本地存储保存任务配置 开发步骤 创建manifest文件 (manifest.json) {"manifest_version": 3,"name": "定时任务助手","…...
100G QSFP28 BIDI光模块一览:100G单纤高速传输方案|易天光通信
目录 前言 一、易天光通信100G QSFP28 BIDI光模块是什么? 二、易天光通信100G QSFP28 BIDI光模块采用的关键技术 三、100G QSFP28 BIDI光模块的优势 四、以“易天光通信100G BIDI 40km ER1光模块”为例 五、总结:高效组网,从“减”开始 关于…...
每日Prompt:迷你 3D 建筑
提示词 3D Q版迷你风格,一个充满奇趣的迷你星巴克咖啡馆,外观就像一个巨大的外带咖啡杯,还有盖子和吸管。建筑共两层,大大的玻璃窗清晰地展示出内部温馨而精致的设计:木质的家具、温暖的灯光以及忙碌的咖啡师们。街道…...
从另一个视角理解TCP握手、挥手与可靠传输
本文将深入探讨 TCP 协议中三次握手、四次挥手的原理,以及其保证可靠传输的机制。 一、三次握手:为何是三次,而非两次? 建立 TCP 连接的过程犹如一场严谨的 “对话”,需要经过三次握手才能确保通信双方的可靠连接。 三…...
SearxNG本地搜索引擎
SearxNG 是一个强大、开源的 元搜索引擎(meta search engine),它不会存储用户信息,注重隐私保护,并支持从多个搜索引擎聚合结果,用户可以自建部署,打造一个无广告、可定制的搜索平台。 🔍 什么是 SearxNG? SearxNG 是 Searx 的一个积极维护的分支(fork),意在改进…...
基于支持向量机(SVM)的P300检测分类
基于支持向量机(SVM)的P300检测分类MATLAB实现,包含数据预处理、特征提取和分类评估流程: %% P300检测分类完整流程(SVM实现) clc; clear; close all;%% 1. 数据加载与模拟生成(实际应用需替换…...
Oracle学习日记--Oracle中使用单个inert语句实现插入多行记录
目录 前言: 问题现象: 问题分析: 解决方法: 1、insert into ... union all句式 2、insert all into ...select 1 from dual句式 总结: 前言: 最近项目中使用到了Oracle数据库,由于Oracle数…...
利用边缘计算和工业计算机实现智能视频分析
在人工智能和物联网取得重大进步的时代,智能视频分析(IVA)正在通过整合先进的人工智能技术来改变视频监控和分析。这项革命性的技术增强了视觉智能,是关键行业创新解决方案的驱动因素。在本文中,我们将介绍IVA的好处、…...
tomcat一闪而过,按任意键继续以及控制台中文乱码问题
问题描述 今天在打开tomcat,启动startup.bat程序时 tomcat直接闪退,后面查找资料后发现,可以通过编辑startup.bat文件内容,在最后一行加入pause即可让程序不会因为异常而终止退出 这样方便查看tomcat所爆出的错误: 然后,我明确看到我的tomcat启动程序显示如下的内容,没有明确…...
go 集成base64Captcha 支持多种验证码
base64Captcha 是一个基于 Go 语言开发的验证码生成库,主要用于在 Web 应用中集成验证码功能,以增强系统的安全性。以下是其主要特点和简介: base64Captcha主要功能 验证码类型丰富:支持生成多种类型的验证码,包括纯…...
【数据结构】线性表--栈
【数据结构】线性表--栈 一.什么是栈二.栈的实现1.栈结构定义:2.栈的初始化:3.栈的销毁:4.插入函数:5.删除函数:6.求栈顶元素:7.求数据个数:8.判空: 三.总结 一.什么是栈 栈是一种重…...
基于亚博K210开发板——麦克风录播测试
开发板 亚博K210开发板 实验目的 本次测试主要学习 K210 通过 I2S 接收和发送的功能,麦克风录音,扬声器播放。 实验准备 实验元件 扬声器、麦克风 元件特性 K210 开发板的麦克风同样是使用 I2S 传输数据,只不过麦克风使用的是 I2S…...
操作系统-锁/内存/中断/IO
文章目录 锁自旋锁互斥锁悲观锁和乐观锁 内存管理物理/虚拟内存页表段表虚拟内存布局写时复制copy on writebrk,mmap页面置换算法 中断中断分类中断流程 网络I/OI/O模型服务器处理并发请求 锁 自旋锁 自旋锁是一种基于忙等待(Busy-Waiting)…...
割点与其例题
割点 定义: 若一个点在图中被去掉后,图的连通块个数增加,那么这个点就被称为“割点”。如下图所示红点。 定义说白了就是若去掉一个点,图被“断开”的点称为割点。 朴素算法: 枚举每个点 u。遍历图,如果…...
CSS实现文本自动平衡text-wrap: balance
不再有排版孤行和寡行 我们都知道那些标题,最后一个单词换行并单独站在新行上,破坏了视觉效果,看起来很奇怪。当然,有老式的 手动换行或将内容分成不同部分。但您听说过text-wrap: balance吗? 通过应用text-wrap: bal…...
【未完】【GNN笔记】EvolveGCN:Evolving Graph Convolutional Networks for Dynamics Graphs
Evolving Graph Convolutional Networks for Dynamics Graphs 视频链接:《图神经网络》 相关系列: 《Dynamic Graph的分类》《动态图网络之Dynamic Self-Attention Network》 文章目录 Evolving Graph Convolutional Networks for Dynamics Graphs一、…...
【愚公系列】《Manus极简入门》042-投资策略分析师:“投资智慧导航”
🌟【技术大咖愚公搬代码:全栈专家的成长之路,你关注的宝藏博主在这里!】🌟 📣开发者圈持续输出高质量干货的"愚公精神"践行者——全网百万开发者都在追更的顶级技术博主! …...
《AI大模型应知应会100篇》第65篇:基于大模型的文档问答系统实现
第65篇:基于大模型的文档问答系统实现 📚 摘要:本文详解如何构建一个基于大语言模型(LLM)的文档问答系统,支持用户上传 PDF 或 Word 文档,并根据其内容进行智能问答。从文档解析、向量化、存储到…...