年轻人的第一个鸿蒙App —— HMS开发工具体验
2024-03-03 20:20:44发布 浏览356次 信息编号:102863
友情提醒:凡是以各种理由向你收取费用,均有骗子嫌疑,请提高警惕,不要轻易支付。
年轻人的第一个鸿蒙App —— HMS开发工具体验
终于有一天,体验了高端HMS开发工具的下载
打开下载页面,可以直接下载开发工具,支持Mac和
下载之前,系统会提示您登录华为开发者帐户。 如果没有,可以直接注册。 这一步没有任何障碍。
不得不说,华为官网纯白色的设计相当有科技感,尤其是下载页面的图片。 别告诉我我不是跟Apple学的♂️
发展
安装软件后直接打开
其实从效果图就可以猜到这个东西其实是IDEA之类的人修改的,所以对于经常使用全家桶的同学来说应该是非常熟悉的。
熟悉的加载动画
(这个标志对我个人来说不太好看)
支持的开发语言和平台
创建项目时,可以看到类似如下的模板选择页面
可以看到,与官方文档描述一致,支持Java和两种语言。
支持的硬件平台包括手机、平板、汽车、电视、手表、智慧屏(后面的估计是指华为自家产品)
JS项目
创建一个新的 JS 项目。 进入后的目录结构与原生开发目录几乎相同。
src/main 目录中只有一个额外的 js 文件夹。 里面的目录结构和微信小程序类似,包括css、js、html(这里是hml后缀)
js文件也是一个包含生命周期函数和数据的对象,类似于小程序。
开发体验方面,IDE右侧可以实时预览,保存后自动执行构建。
HMS支持的JS开发文档可以参考官方文档。 然而,与标准的Web开发甚至小程序相比,支持的html标签仍然较少,CSS样式也没有z-index等属性。
java文件夹下有.java和.java两个文件夹,提供了和中类似的生命周期和操作
至于HMS是否是魔改这一颇具争议的话题,我在这里不做过多的讨论和评论。 在这个知乎回答#我的第一个鸿蒙app,以及我所看到的一些分析和内容介绍
我个人也将HMS打包的.hap文件后缀改为.zip并解压,发现里面确实有一个apk文件
Java项目
删除之前的项目文件,新建一个Java语言项目
这次的目录结构几乎和原来的项目一样。 没有JS的支持,开发UI的工作还是靠xml文件来完成。
不过,java 文件夹中还有之前的两个 java 文件,以及一个自动生成的 .java 文件。 仔细看这个文件的内容,我们发现它加载了src/main/下对应的xml文件来生成UI,并提供了一些生命周期(好吧,我粗心了,这是它的“”文件)
可能是我的理解不够透彻,没有仔细研究官方文档中的说明。 对比这两个文件,它们提供了加载组件、路由等功能,而真正的UI是通过类来加载和提供的。
在实际开发中,我发现xml开发不支持那样提供的拖拽式UI编辑器,而且值得一提的是,选择Java语言创建项目后,无法用于实时预览(这并不奇怪,能做到的恐怕只有JS系统里的了),所以调试必须使用真机进行。
真机调试
由于我没有真机HMS,这里的真机是指IDE提供的HVD调试,其实就是远程调试(华为真有钱),但是每次调试只能连接设备1小时。
HVD提供手机、平板电脑、手表等硬件设备。 对于手机,仅 P40 可用。
设备连接成功后,就变成了熟悉的开发形态。 但与本地模拟器相比,远程调试体验并不是很好。 除了设备时间限制之外,网络延迟也让调试过程变得非常缓慢(可能是因为这里开发x86的成本)
总结
事实上,对于HMS以及HMS相关的SDK、开发工具等来说,他们最大的压力并不是追赶和与现有的SDK和工具链竞争,而是公众和媒体对HMS的过度期待和解读。
不管HMS是否真的是“魔改”,都可以确认这个官方开发工具采用的是魔改方案。 当然,这并不是一件坏事。 毕竟也是IDEA修改过的。
但让我失望的是,官方的工具并不能令人满意地满足基本的IDE要求
简单来说,就是使用IDE时经常出现卡顿,界面的字体大小和粗细很奇怪,预览界面粗糙,甚至不如小程序的实时预览……
最终这些小问题都是影响开发体验的“最后一根稻草”。 到目前为止,HMS 仍然支持标准的开发应用,而且与 React、Weex、uni-app 等一系列 JS 实现的跨端方式相比,使用 HMS 开发 JS 也是极其痛苦的
“反正国内UI大部分都是AOSP插桩,HMS也支持原生,如果我继续用RN或者原生开发岂不是很好?”
事实上,也有更大胆的说法,称这是一款“领导沟通的产品”或者“匆忙推出的IDE”。 我认为这并不过分。
毕竟,口号先提出来,就不能拿金玉满堂、内有碎屑的东西交给群众去检验。
提醒:请联系我时一定说明是从星空网上看到的!