扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
开发前可以了解下鸿蒙: [鸿蒙开发 序]华为鸿蒙操作系统(HarmonyOS)简介及开发环境搭建
专注于为中小企业提供成都网站制作、网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业朔州免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了超过千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
开发前的准备:「鸿蒙开发 1」华为鸿蒙应用集成开发环境DevEco Studio安装和设置
了解鸿蒙应用开发的基本开发流程:「鸿蒙开发 2」第一个华为鸿蒙(HarmonyOS)应用程序(App)
本章目标:
1 了解华为鸿蒙应用开发的可视化(低代码)方式
2 通过构建一个简单的具有页面跳转功能的应用
低代码开发方式,即通过可视化界面开发方式快速构建布局、编辑UI界面,可有效降低用户的上手成本并提升用户构建UI界面的效率。
1 打开DevEco Studio,创建一个新工程,选择支持Phone / Tablet / Wearable(手机 / 平板 / s可穿戴)的模板,我们在此直接选择Empty Ability
Project name工程名称填SuperVisual
Development mode开发方式选择Super Visual
其它的可以使用默认设置,点击完成,进入编辑界面
1 在Project(项目)窗口,删除工程运行默认的入口文件夹:“entry src main js default pages index”文件夹
2 在Project窗口,选择工程中的“entry src main js default pages”,单击鼠标右键,选择“New JS Visual”
JS visual name填first,点击完成,进入编辑界面
创建完成后,可以看到“entry src main supervisual default pages page page.visual”的文件目录结构
3 第一个页面内有一个容器、文本和一个按钮,通过Div、Text和Button组件来实现
(1)分别选中first.visual画面中的Text、Div组件,单击鼠标右键,选择Delete删除
(2)选中UI Control中的Div组件,将其拖至画布
点击右侧属性样式栏中的通用样式图标(General),设置Div组件的高度Height为100%,使其占满屏幕
点击右侧属性样式栏中的样式图标(Flex),设置Div组件的FlexDirection样式为column,使Div的主轴垂直;设置Div组件的JustifyContent样式为center,使得其子组件在主轴上居中显示;设置Div组件的AlignItems样式为center,使得其子组件在交叉轴上居中显示
(3)选中UI Control中的Text组件,将其拖至Div组件的中央区域
点击右侧属性样式栏中的属性图标(Properties),设置Text组件的Content属性为 “ Hello World ”
点击右侧属性样式栏中的通用样式图标(General),设置Text组件的宽(width)为100%,高(height)为100px
点击右侧属性样式栏中的样式图标(Feature),设置组件的FontSize样式为60px,使得其文字放大;设置组件的TextAlign样式为center,使得组件文字居中显示
(4)选中UI Control中的Button组件,将其拖至Text组件下面
点击右侧属性样式栏中的属性图标(Properties),设置Button组件的Value属性为 “ Next ”,
点击右侧属性样式栏中的通用样式图标(General),设置按的宽(width)为40%,高(height)为60px
点击右侧属性样式栏中的样式图标(Feature),设置组件的FontSize样式为40px
至此,第一个页面创建完成
我们可以在预览窗口中看效果,点击右侧边栏的Preview打开预览窗口
1 在Project窗口,选择工程中的“entry src main js default pages”,单击鼠标右键,选择“New JS Visual”
Visual配置界面,JS visual name填second,回车(Enter键)或者点击完成,进入编辑界面
2 第二个页面中有一个容器和文本,通过Div、Text组件实现,现在编辑器已经为我们创建好了,我们就来修改下它们的属性(你也可以删除原有的自己创建,具体步骤参考本章第二节“二 创建第一个页面”)。
选中Text组件,点击右侧属性样式栏中的属性图标(Properties),设置Text组件的Content属性为 “ Hi,I'm always here. ”
点击右侧属性样式栏中的通用图标(General),设置组件的宽(width)为100%,高为60px
点击右侧属性样式栏中的样式图标(Feature),设置组件的FontSize样式为36px,TextAlign样式为center
这样我们的第二个页面创建成功了
1 在Project窗口,打开工程中的“entry src main js default pages first first.js”, 导入router模块,页面路由router根据页面的uri来找到目标页面,从而实现跳转。示例代码如下:
2 打开或者切换到first.visual页面,选中画布上的Button组件,点击右侧属性样式栏中的事件图标(Events),鼠标点击Click事件的输入框,选择launch事件
3 在预览窗口中查看项目效果,点击Next按钮后发现我们的页面成功跳转了。
到此,本章的目标就完成了。
参考 鸿蒙官方文档(点击传送门) ,做一下流程梳理简化,及踩坑记录
华为将真机调试分成物理真机和远程真机。这里说的都是物理真机(手机、平板)。鸿蒙真机调试巨复杂,不像Android那么容易方便。
贴一下官方的调试流程图:
总结一下:
上面这个流程可以忽略,没讲到重点。真机调试是需要在 AppGallery Connect 中创建应用的,调试应用需要的cer和p7b文件是从这里生成的。
先决条件:
1. 鸿蒙手机通过USB连接电脑,并开启USB调试。
2. 一个华为开发者账号,实名认证
3. APP开发工具DevEco-Studio
关键流程:
1. Studio创建应用
2. 如果未登录过,File Project Structure Project Signing Configs签名配置页,点击“Sign In”
3. AppGallery创建应用(包名和Studio创建的一样)
4. 官方文档到这在签名配置页就点Try Again可以自动签名,我试了不行,以下全是手动
5. Studio中Build Generate key and CSR 生成p12和csr文件
6. 获取手机udid,命令行hdc shell bm get -udid(下一步设备管理要用)
7. AppGallery主页 用户与访问 左侧设备管理添加udid的设备(生成p7b时要用)
8. AppGallery主页 用户与访问 左侧证书管理生成cer文件(生成p7b和签名配置要用)
9. AppGallery主页 我的项目 左侧HarmonyOS应用 HAP provision profile,生成p7b文件
10. 最后在签名配置页配好 p12、p7b、cer等参数,运行鸿蒙应用到真机就行了
2019年,华为正式发布鸿蒙OS。彼时的鸿蒙还停留在概念阶段,外界的嘲讽和质疑不绝于耳。
2021年4月27日,华为鸿蒙OS开发者公测版本大批量向开发者推送,网上出现大量鸿蒙OS实测视频。值得一提的是,所有开发者在申请鸿蒙OS公测版本的时候都会勾选“保密协议”,因此随意公布开发者版本的鸿蒙OS,开发者可能会面临被撤销鸿蒙OS测试资格的风险。不过还是有许多网友按捺不住激动的心情,冒着风险,放出了许多鸿蒙OS体验视频。
4月30日,知名数码博主@数码闲聊站简单测试了一下鸿蒙OS在华为Mate X2折叠屏手机的性能。他表示,在《王者荣耀》极致画质以及《和平精英》的HDR抗锯齿模式下,基于鸿蒙OS2.0运行的流畅度和稳定性比EMUI 11更好,而且功耗也更低。
他还表示,鸿蒙 OS 2.0 系统的流畅度以及 App 打开切换速度目前与EMUI11保持一致。他对此解释道,考虑到系统稳定性和兼容性,选择将鸿蒙和 AOSP(Android 10)双架构封装在一起,所以目前手机中大部分安卓 App 的运行环境依旧是安卓,从而保证流畅度。
目前已经接触过鸿蒙OS的开发者爆料称,鸿蒙 App 后缀名是 Hap,与安卓APP后缀Apk完全不同,不过目前鸿蒙App的数量还比较稀少。
根据华为此前公布的鸿蒙OS支持安卓APP的平滑演进方案来看,未来鸿蒙APP将会越来越多,直至完全取代安卓应用生态。
值得一提的是,在鸿蒙OS开发者公测版本最新的一次更新中,系统中出现了三款鸿蒙应用,分别是央视影音、优酷视频、新浪新闻。这些鸿蒙应用内置了分布式功能,只要有两台鸿蒙设备就可以体验,该特性是鸿蒙应用独有,安卓系统无法实现。
举一个例子,根据知乎网友@氟氯萘的体验视频来看,优酷APP鸿蒙版可以让手机和平板电脑联动起来,平板电脑变成电视,手机则变身电视遥控器,控制平板电脑上视频。
另外根据该网友的透露,在此前华为开发者大会上,鸿蒙版优酷APP还能实现其他更酷炫的功能,比如用鸿蒙手机操控全景视频视角、机位。还可以在平板电脑上播放综艺节目观看全景舞台,同时手机上同步自己喜欢的明星专属视角。不过笔者分析,该功能应该并不适用于所有视频内容,必须由360 多机位拍摄的专属视频内容才可实现。不过鸿蒙OS的出现或许会让这种视频内容呈现方式更加普及,为网友带来更多个性化的内容服务。
此外,这些鸿蒙APP的文件大小都要远小于安卓版本,比如鸿蒙版的央视影音只有1.35MB,而安卓版却有27.9MB大小。据分析,造成这种现象的主要原因可能是鸿蒙OS“弹性部署”的特性,天生更省时间。
除了以上鸿蒙OS体验之外,还有其他更多惊喜,笔者简单归纳了一下,供网友参考:
此外,还有鸿蒙OS应用流转功能,此前已经在北汽极狐阿尔法S所搭载的鸿蒙车机上实现。比如在手机上打视频电话,上车后可以将视频电话无缝流转到车机上,无须挂断重新拨打视频电话。
谈谈我的个人想法:
鸿蒙OS从发布之初就遭到了无尽的冷眼和嘲讽,这在华为 历史 上其实是一种常态,华为麒麟芯片在早期阶段同样不被看好,但事实证明,华为总是能一步一个脚印,一点点克服困难,最终到达胜利的彼岸,比如现在的麒麟9000芯片、全球5G话语权等。
笔者在工作上与华为团队有过多次合作,虽然不在技术岗,但没吃过猪肉总是见过猪跑的。面对一个实打实做出成绩的中国 科技 龙头企业,笔者从不怀疑华为能研发出一个面向未来的国产独立自主的操作系统。我也相信在即将到来的万物互联时代,鸿蒙OS必将大放光芒。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流