【HarmonyOS开发】鸿蒙控件与原生App的区别

news/2024/7/21 9:24:34 标签: harmonyos, 华为

控件与应用的区别,这应该是一个很少被人提及的话题,刚进入鸿蒙圈,接触的就是高阶控件的开发,引发了很多关于控件与用用的思考,也踩了不少的坑,记录一下。

1、什么是鸿蒙高阶控件?

鸿蒙控是需要写入手机系统的SO。我们的控件只有一个JS文件,通过BUILD.gn和xxx.cpp文件将xxx.js编译为SO,最后,通过hdc工具命令将SO包烧录到鸿蒙系统中。

hdc常用命令

// 查看设备是否连接
hdc list targets

// 以读写模式挂载系统分区
hdc target mount

// 将本地文件,加载到系统的/data/local/tmp/这个位置
hdc file send E:\example.txt /data/local/tmp/

// 重启设备
hdc shell reboot

2、组件与应用的区别

        App应用:可以在包里面调用任何资源,中英文等我们也可以通过resources中引入,自定义性比较强。

        高阶控件:写入鸿蒙系统的应用,只能依托系统中存在的能力进行二次开发,或通过C++开发底层应用,提供给ArkTS进行调用。

  • 控件只能够调用系统资源($r(sys.xx.xx));
  • 如果需要使用image等资源,需要转换为base64格式进行引入;
  • API9中鸿蒙的Icon图标资源还未引入鸿蒙系统;
  • 组件中英文问题,控件是需要调用系统语言包的,写在resources中的是不会起作用的;

未完,等待继续更新...


http://www.niftyadmin.cn/n/5236716.html

相关文章

linux 内核进程管理介绍

Linux内核进程管理是操作系统中非常重要的一部分,它负责管理和调度系统中的进程。本文将介绍Linux内核进程管理的工作原理、调度算法等方面的内容。 一、进程的创建和销毁 在Linux中,进程的创建通过fork()系统调用完成。fork()会创建一个子进程&#xf…

Python----练习:使用面向对象实现报名系统开发

第一步:分析哪些动作是由哪些实体发出的 学生提出报名 学生提供相关资料 学生缴费 机构收费 教师分配教室 班级增加学生信息 于是,在整个过程中,一共有四个实体:学生、机构、教师、班级!在现实中的一个具体的实…

深圳招聘一般在哪个网站

深圳吉鹿力招聘网是一个专注于深圳招聘的平台,主要提供人才招聘服务。在深圳吉鹿力招聘网上,你可以找到各种深圳招聘信息,包括企业招聘、职位发布、简历投递等。深圳吉鹿力招聘网的出现,方便了求职者的投递和查询工作机会&#xf…

通用plantuml 时序图(Sequence Diagram)模板头

通用plantuml文件 startuml participant Admin order 0 #87CEFA // 参与者、顺序、颜色 participant Student order 1 #87CEFA participant Teacher order 2 #87CEFA participant TestPlayer order 3 #87CEFA participant Class order 4 #87CEFA participant Subject order …

聊一聊大模型 | 京东云技术团队

事情还得从ChatGPT说起。 2022年12月OpenAI发布了自然语言生成模型ChatGPT,一个可以基于用户输入文本自动生成回答的人工智能体。它有着赶超人类的自然对话程度以及逆天的学识。一时间引爆了整个人工智能界,各大巨头也纷纷跟进发布了自家的大模型&#…

Python学习路线 - Python语言基础入门 - 学习汇总

Python学习路线 - Python语言基础入门 - 学习汇总 目录准备工作基础语法判断语句功能快捷键功能快捷键功能快捷键功能快捷键功能快捷键功能快捷键功能快捷键功能快捷键 目录 准备工作 基础语法 判断语句 功能快捷键 功能快捷键 功能快捷键 功能快捷键 功能快捷键 功能…

基于Java SSM框架+Vue实现旅游资源网站项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架Vue实现旅游资源网站演示 摘要 本论文主要论述了如何使用JAVA语言开发一个旅游资源网站 ,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述旅游…

IDEA插件MybatisLog Free失效,不打印日志解决

因为此插件是基于mybatis的本地日志打印基础上操作的,所以检查是否配置日志输出版本. 如果使用的是mybatis-plus框架检查是否有下面语句 mybatis-plus: configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl 如果使用的是mybatis框架检查是否有下面语…