0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【软通动力鸿湖万联扬帆系列“竞”开发板试用体验】试用测评报告四 – 开源鸿蒙应用软件开发

开发板试用精选 来源:开发板试用 作者:电子发烧友论坛 2022-10-13 10:40 次阅读

本文来源电子发烧友社区,作者:ALSET, 帖子地址:https://bbs.elecfans.com/jishu_2306880_1_1.html



安装和创建鸿蒙应用(视频内容详见作者原帖子)

本帖最后由 ALSET 于 2022-9-21 18:28 编辑

鸿湖万联扬帆系列“竞”开发板试用测评报告四 – 开源鸿蒙应用软件开发
大信(QQ:8125036)
在成功的实现系统刷机方法后,接下来的一步是开始着手建立该开发板的开发环境。首先阅读官方提供的开发文档《软通动力启航KS_IoT智能开发套件_软件开发环境搭建V1》。文档从环境要求,软件工具列表,虚拟机安装等做了详细的说明。这里就按照文档的操作步骤开始搭建开发板的开发环境。这里使用的VMware Workstation 15Player 虚拟机软件,版本为 Ver15.0.2
poYBAGMq4qeAShUiAAPUTbaFgGg138.png
图1 OpenHarmony 整体技术架构
一、了解OpenHarmony开源项目
在着手基于OpenHarmonyy 应用开发之前,首先有必要了解一下OpenHarmony的开源项目本身的技术信息,有利于帮助更好的了解这个系统的架构,以便后面更好的上手进行开发。这里引用了openharmony 在gitee上的readme里的部分内容,从这个内容里可以了解系统的主要架构和应用软件的一些规范定义,比如它的应用称为 FA/PA. FA 就是我们理解的APP,具有UI元素的应用,而PA则是后台应用,无界面的一种APP,这个在Android是android service的概念。
OpenHarmonyOS基本介绍
OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)的开源项目,它面向全场景、全连接、全智能时代场景下的应用,基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。
系统总体架构
· OpenHarmony整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 > 子系统 > 组件”逐级展开,在多设备部署场景下,支持根据实际需求裁剪某些非必要的组件。
内核层
· 内核子系统:采用多内核(Linux内核或者LiteOS)设计,支持针对不同资源受限设备选用适合的OS内核。内核抽象层(KAL,Kernel Abstract Layer)通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。
· 驱动子系统:驱动框架(HDF)是系统硬件生态开放的基础,提供统一外设访问能力和驱动开发、管理框架。
系统服务层
系统服务层是OpenHarmony的核心能力集合,通过框架层对应用程序提供服务。该层包含以下几个部分:
· 系统基本能力子系统集:为分布式应用在多设备上的运行、调度、迁移等操作提供了基础能力,由分布式软总线、分布式数据管理、分布式任务调度、公共基础库、多模输入、图形、安全、AI等子系统组成。
· 基础软件服务子系统集:提供公共的、通用的软件服务,由事件通知、电话、多媒体、DFX(Design For X) 等子系统组成。
· 增强软件服务子系统集:提供针对不同设备的、差异化的能力增强型软件服务,由智慧屏专有业务、穿戴专有业务、IoT专有业务等子系统组成。
· 硬件服务子系统集:提供硬件服务,由位置服务、用户IAM、穿戴专有硬件服务、IoT专有硬件服务等子系统组成。
根据不同设备形态的部署环境,基础软件服务子系统集、增强软件服务子系统集、硬件服务子系统集内部可以按子系统粒度裁剪,每个子系统内部又可以按功能粒度裁剪。
框架层
框架层为应用开发提供了C/C++/JS等多语言的用户程序框架和Ability框架,适用于JS语言的ArkUI框架,以及各种软硬件服务对外开放的多语言框架API。根据系统的组件化裁剪程度,设备支持的API也会有所不同。
应用层
应用层包括系统应用和第三方非系统应用。应用由一个或多个FA(Feature Ability)或PA(Particle Ability)组成。其中,FA有UI界面,提供与用户交互的能力;而PA无UI界面,提供后台运行任务的能力以及统一的数据访问抽象。基于FA/PA开发的应用,能够实现特定的业务功能,支持跨设备调度与分发,为用户提供一致、高效的应用体验。
开发环境配置介绍:
· Windwos环境供开发者参考:
· 硬件:CPU Intel(R) Core(TM)i7-4770HQ CPU @ 2.20GHz 2.20 GHz
· 内存:16G
· 硬盘:1T
· 操作系统:Win10, Vmware 15 Player
二、安装集成应用开发IDE
因为Openharmony 还没有直接可用的集成开发软件,因此开发者一般使用基于OpenHarmony开发使用华为的HarmonyOS 的集成开发工具,因为华为HarmonyOS的底层和OpenHarmony是一样的,所以可以使用华为的集成应用开发工具来做OpenHarmony的应用开发,开发软件工具名字叫 DevEco Studio,最新版本为3.0,下面页面地址即可下载
https://developer.harmonyos.com/cn/develop/deveco-studio#download
poYBAGMq4qeABEubAABglt_S3wE058.png
图2 安装集成开发环境
poYBAGMq4qiAbFDiAABBQnzpT58981.png
图3 配置开发环境
pYYBAGMq4qmADYWHAAAzF9ymprQ891.png
图4 安装进行中
poYBAGMq4qmAQW1AAABwZHkDdfA931.png
图5 安装各种插件
pYYBAGMq4qqAOG5rAABDKhq-bnk219.png
图6 安装Nodejs 运行框架
poYBAGMq4quAZh0BAABts3n6TQk092.png
图7 安装鸿蒙SDK
pYYBAGMq4qyAb2P1AABf9C4YNzI450.png
图8 开发环境设置
pYYBAGMq4q2ANbTVAAEkDdLj3TE292.png
图9 下载Openharmony 语言模板
pYYBAGMq4q6AAreLAABwQLQq7jQ759.png
图10 下载其它相关组件
三、创建鸿蒙Hello,world 程序
安装完集成开发环境之后,就可以创建一个简单的测试程序,来测试验证开发环境是否正确。打开DevEco Studio,选择创建应用,如下图:
poYBAGMq4q6AEfUKAABkRUV0dr0620.png
图11 创建新应用
下一步选择平台,这里注意,要选择 OpenHarmony, 这里默认是HarmonyOS ,注意不要选错了,HarmonyOS是华为的商业系统,而OpenHarmony才是开源社区的,这里也说一下华为,既然提供工具,就不要给自家打广告了,显的格局太小。
poYBAGMq4q6AEfUKAABkRUV0dr0620.png
图12 创建应用模板
选择好平台后,出现应用模板,可以按到这里有两种,一种是基于 ejs, 的开发,一种是c++的开发,ejs 是H5 框架开发的一种技术,做应用如同做页面一样简单,所以这里就选择 ejs 模板了。然后填写一些应用的参数信息,名称,项目路径,语言等。就可以了。
pYYBAGMq4rCAFF1fAACRBYDDlws744.png
图13 配置应用相关参数
点击完成,就进入到项目里了,看一下代码,真的很简洁,如果熟悉 javascript的同学,恍惚认为是在做页面开发,是的,做鸿蒙js应用开发,就是这么没有“技术”含量,项目源码界面:
poYBAGMq4rGAXN3xAAGTrFHgDBY781.png
图14 应用软件代码编辑
也可以切换到UI编辑界面可以看到现在Hello,world的UI设计,这里稍微改一下,界面上加上板子的供应商名字,以示我做开发了,哈哈。
做完开发后,点击build里的编译,很快几步提示,编译成功。应用开发就这这么简单且无趣。
pYYBAGMq4rGAHTXIAALWXf7pnnU407.png
图15 应用软件UI设计器
四、编辑和编译程序
编译程序很简单,在见面上找到build,选择编译即可。编译完后,开发打包,生成可以下载开发板的app软件,同样在build界面上,点击构建安装包,就开始进行打包工作。
首次打开会弹出一个安全证书请求的要求,原来鸿蒙的应用都需要CA签名,按提示说明,填入相关的信息,进行证书的制作。这一步看着填的东西很多,其实很简单,按文档或者网上的教程照做,简单几步就可以过去了。
其中有一步需要登录得到华为网上做身份认证,选择个人身份就可以了,个人身份认证还需要实名认证,这一点不得不说鸿蒙对应用开发的安全管控做的非常周密了,以后不会像某些平台上,各种恶意匿名的恶意软件横行,让人防不胜防的情况产生了。
poYBAGMq4rKASRH2AABpFt7_MXk727.png
图16 生成公钥
pYYBAGMq4rOAIEOTAAAWt8MqTLs600.png
图17 生成设备请求证书
poYBAGMq4rSAMjm-AACPotO0yJU545.png
图18 注册验证鸿蒙开发者账号
获取完证书,就可以打包生成可以下载的APP了,如下图所示:
pYYBAGMq4rWAcOK6AAI3fYEclWQ541.png
图19编译打包应用
下载APP也很简单,收件把开发板插入电脑,然后在开发工具里打开DevEco Studio里的设备管理,选择本地设备,就可以看到开发板了,如果没有出现,那么说明开发板的SDK的版本和开发软件里的SDK版本不一致,搞不清版本的情况,可以进入SDK管理项里,把所有能用的SDK都勾选上,全部下载安装上,这样就可以看到开发板了。下载更多版本的SDK,需要点时间和更多的硬盘空间。
poYBAGMq4raAYtXHAAFwiT_Tn-E201.png
图20开发板模拟器和设备管理
此时回到开发界面,在右上角设备列表里,会出现开发板的ID,如果没有在下拉列表里会有,选择上即可以,然后点右侧的“运行”,即自动的安装运行,如下图:
poYBAGMq4-aAMy4FAAGyS6CSJUk689.png
图21下载到开发板测试运行
然后开发板的显示器界面上就会自动的安装并运行我们开发的APP程序了,其中可以注意到,应用的安装运行是通过命令行进行的,这些命令可以在命令行运行,进入到SDK的toolchains目录下,运行这些命令,一样可以进行安装,运行和停止,卸载。非常方便。和Android的ADB工具模式是类似的。
hdc_std uninstall com.example.myapplication

hdc_std install -r "E:HuaweiOpenHarmonyProjMyApplicationentrybuilddefaultoutputsdefaultentry-default-signed.hap"

hdc_std shell aa start -a com.example.myapplication.MainAbility -b com.example.myapplication


五、板上运行程序
把编译打包好的程序发布到开发板上,一种方式就是,通过DevEco在板上安装,运行。另外一个方式就是通过命令行来进行安装。同时因为测试程序只做了一个界面,没有退出按钮,所以应用无法退出。此时也可以通过命令行来终止运行:
hdc_std.exe shell aa force-stopcom.example.myapplication
板上运行效果如图:
poYBAGMq4-eAd3wyAA9Mcx1wG-U278.png
图22 板上运行效果
后面附上一个板上启动运行的视频:

编译运行鸿蒙应用程序(视频内容详见作者原帖子)


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 软通动力
    +关注

    关注

    1

    文章

    849

    浏览量

    15206
  • OpenHarmony
    +关注

    关注

    25

    文章

    3744

    浏览量

    16515
  • 鸿湖万联
    +关注

    关注

    1

    文章

    77

    浏览量

    668
收藏 人收藏

    评论

    相关推荐

    微展世与鸿携手发布WeOS开源鸿蒙工业操作系统

    近日,微展世(北京)数字科技有限公司(简称“微展世”)在北京隆重举办了2025年度的产品发布与战略签约盛会。此次盛会中,微展世的重要战略合作伙伴——动力及其子公司鸿
    的头像 发表于 01-23 15:48 202次阅读

    动力鸿与微展世签署战略合作协议,以开源鸿蒙赋能工业创新升级

    1月7日,动力携子公司鸿,与微展世(北京)数字科技有限公司(简称“微展世”)在广州签署
    的头像 发表于 01-21 16:30 166次阅读
    <b class='flag-5'>软</b>通<b class='flag-5'>动力</b>携<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>与微展世签署战略合作协议,以<b class='flag-5'>开源</b><b class='flag-5'>鸿蒙</b>赋能工业创新升级

    动力子公司鸿携手南方科技大学 共筑开源鸿蒙人才培养新高地

    1月4日,动力子公司鸿与南方科技大学携手,开展了一
    的头像 发表于 01-20 17:02 289次阅读
    ‌<b class='flag-5'>软</b>通<b class='flag-5'>动力</b>子公司<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>携手南方科技大学 共筑<b class='flag-5'>开源</b><b class='flag-5'>鸿蒙</b>人才培养新高地

    动力携手微展世发布WeOS开源鸿蒙工业操作系统

    近日,微展世(北京)数字科技有限公司(简称“微展世”)在北京成功举办了2025产品发布与战略签约盛典。作为微展世的重要战略合作伙伴,动力及其子公司鸿
    的头像 发表于 01-20 10:25 120次阅读

    荣膺多项殊荣!动力携子公司鸿亮相2024开放原子开发者大会

    壮大我国开源生态。作为开源生态的杰出贡献者和深度参与者,动力携子公司鸿
    的头像 发表于 01-20 09:42 149次阅读
    荣膺多项殊荣!<b class='flag-5'>软</b>通<b class='flag-5'>动力</b>携子公司<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>亮相2024开放原子<b class='flag-5'>开发</b>者大会

    动力鸿与微展世签署战略合作协议

    近日,动力携子公司鸿,与微展世(北京)数字科技有限公司(简称“微展世”)在广州签署战略
    的头像 发表于 01-10 10:16 169次阅读

    鸿携手南方科技大学推动开源鸿蒙生态发展

    近日,动力子公司鸿与南方科技大学携手,开展了一系列
    的头像 发表于 01-06 14:01 182次阅读

    动力携子公司鸿通教育助阵首届鸿蒙生态大会成功举办

    11月23日·中国深圳,首届鸿蒙生态大会上,动力动力子公司鸿
    的头像 发表于 11-29 10:25 231次阅读
    <b class='flag-5'>软</b>通<b class='flag-5'>动力</b>携子公司<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>、<b class='flag-5'>软</b>通教育助阵首届<b class='flag-5'>鸿蒙</b>生态大会成功举办

    动力子公司鸿助阵鸿蒙1024程序员节成功举办

    10月24日,在武汉、成都、深圳等地政府指导下,鸿蒙生态服务公司举办了一场面向广大开发者的盛会——鸿蒙1024程序员节暨鸿蒙原生应用交流会。
    的头像 发表于 10-29 15:49 460次阅读
    <b class='flag-5'>软</b>通<b class='flag-5'>动力</b>子公司<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>助阵<b class='flag-5'>鸿蒙</b>1024程序员节成功举办

    动力子公司鸿发布SwanLinkOS 5

    在近日圆满闭幕的首届H•I³ AI探索峰会上,动力凭借其深厚的技术实力与创新精神,在鸿蒙生态领域再次迈出坚实步伐。会上,动力携手子公
    的头像 发表于 09-04 16:50 877次阅读

    动力子公司鸿重磅发布SwanLinkOS 5,擘画开源鸿蒙AI PC新篇章

    在刚刚落下帷幕的首届H•I³AI探索峰会上,动力再次于鸿蒙生态领域实现突破。此次活动中,动力高级副总裁、
    的头像 发表于 09-03 11:37 612次阅读
    <b class='flag-5'>软</b>通<b class='flag-5'>动力</b>子公司<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>重磅发布SwanLinkOS 5,擘画<b class='flag-5'>开源</b><b class='flag-5'>鸿蒙</b>AI PC新篇章

    动力子公司鸿携多款重磅创新产品亮相华为开发者大会

    如何引领行业进步,共同探索鸿蒙生态与AI大模型的发展新契机。作为本次大会钻石级合作伙伴,动力携子公司鸿
    的头像 发表于 06-25 11:38 401次阅读
    <b class='flag-5'>软</b>通<b class='flag-5'>动力</b>子公司<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>携多款重磅创新产品亮相华为<b class='flag-5'>开发</b>者大会

    共谱开源新篇章 动力子公司鸿鸿蒙生态服务公司签署战略合作协议

    近日,动力子公司鸿鸿蒙生态服务(深圳)有
    的头像 发表于 04-02 15:23 523次阅读
    共谱<b class='flag-5'>开源</b>新篇章 <b class='flag-5'>软</b>通<b class='flag-5'>动力</b>子公司<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>与<b class='flag-5'>鸿蒙</b>生态服务公司签署战略合作协议

    人才储备再升级!动力子公司鸿多名讲师荣获首批“鸿蒙原生应用开发培训讲师”认证

    近日,由鸿蒙生态服务公司组织开展的国内首批“鸿蒙原生应用开发培训讲师”认证顺利完成。作为此次认证的重要参与者,鸿
    的头像 发表于 03-25 10:25 647次阅读
    人才储备再升级!<b class='flag-5'>软</b>通<b class='flag-5'>动力</b>子公司<b class='flag-5'>鸿</b><b class='flag-5'>湖</b><b class='flag-5'>万</b><b class='flag-5'>联</b>多名讲师荣获首批“<b class='flag-5'>鸿蒙</b>原生应用<b class='flag-5'>开发</b>培训讲师”认证

    动力子公司鸿多名讲师荣获首批“鸿蒙原生应用开发培训讲师”认证

    近日,由鸿蒙生态服务公司组织开展的国内首批“鸿蒙原生应用开发培训讲师”认证顺利完成。作为此次认证的重要参与者,鸿
    的头像 发表于 03-25 09:24 479次阅读