HarmonyOS应用开发 - 工具记录

HarmonyOS应用开发是目前是最火、最有前景的方向,现在入门鸿蒙开发还来得及。鸿蒙开发官网:developer.huawei.com/consumer/cn

大家好,我是德莱问,前端太卷了,已经卷不动了,现在换个方向,卷鸿蒙吧。此次记录一下鸿蒙开发中使用到的几个命令,以备后面使用的时候可以快速找到。

开发环境搭建

如果你之前是做前端的话,下载工具后,按照步骤即可完成环境适配,记得一定要搞一个开发机,现在的preview是完 全不同于前端的,可以理解为基本不能用。

工具下载地址:developer.huawei.com/consumer/cn...

概念普及

  • 依赖管理:ohpm,可以理解为前端的pnpm;
  • 开发语言:现在开发语言使用的是arkts,可以理解为typescript
  • UI框架:arkui,属于flutter语法。

其实从上面来看,鸿蒙开发对于前端来说还是比较友好的,一些概念性的东西可以直接应用到鸿蒙开发上面。当然客户端的一些东西就要从头学习一下啦。

获取设备的uuid

华为开发过程中需要使用到开发机,获取开发机的uuid后,添加到白名单中,即可实现无需签名就可以使用开发机,构建应用啦。连接手机设备到电脑后执行以下命令获取到开发机的uuid:

hdc shell bm get --udid

前端页面的开发调试

客户端开发中,肯定少不了WebView的实现,如何对前端页面进行inspect呢?命令如下:

1、启动设备,即编译安装app

2、执行:hdc shell

3、获取进程:cat /proc/net/unix | grep devtools,此时会获取到一个id。

4、连接设备:hdc fport tcp:9222 localabstract:webview_devtools_remote_【id】

5、查看连接状态:hdc fport status

6、打开Chrome浏览器,输入:chrome://inspect/#devices,点击对应的页面进行inspect即可。

7、记得WebView创建的时候要设置domStorageAccess属性为true,不然使用到LocalStorage的地方会直接报错。

组件WebView的一个bug

客户端开发过程中,肯定使用到抓包,华为抓包是需要指定一个caPath 的,即https请求的证书地址。 无论是使用华为提供的http包,还是使用@ohos/axios包,都是支持配置capath的。所以我们可能会封装一个request模块,去统一发起网络请求,这个时候在request模块里面直接写死caPath即可。

WebView的官方使用文档:developer.huawei.com/consumer/cn...

当我们使用 WebView 的时候,打开页面后,页面里面肯定会有其他的一些网络请求,而且现在网络请求基本都是https的网络请求,但是无法指定其网络请求发起时的caPath,所以网页里面的所有网络请求都会请求失败。

解决办法:

  • 当抓包的时候,别打开WebView
  • 当打开WebView的时候,别抓包,直接使用上面的inspect进行网页调试。

等华为修复后可能就好了。创建WebView的时候支持传递caPath进去。

结尾

欢迎关注公众号【丶德莱问】。

相关推荐
迷曳9 小时前
27、鸿蒙Harmony Next开发:ArkTS并发(Promise和async/await和多线程并发TaskPool和Worker的使用)
前端·华为·多线程·harmonyos
迷曳14 小时前
24、鸿蒙Harmony Next开发:不依赖UI组件的全局自定义弹出框 (openCustomDialog)
dialog·前端·ui·harmonyos·鸿蒙
平谷一勺21 小时前
鸿蒙状态栏操作
华为·harmonyos·沉浸式状态栏
Georgewu2 天前
【HarmonyOS组件/模板集成创新活动-如何高效开发鸿蒙应用 (鸿社圈子)】
harmonyos
前端世界2 天前
跨平台 App 如何无痛迁移到鸿蒙系统?全流程实战+Demo 教程
华为·harmonyos
龙儿筝2 天前
鸿蒙和Android知识点
android·harmonyos
迷曳2 天前
17、鸿蒙Harmony Next开发:状态管理(组件拥有的状态和应用拥有的状态)
前端·harmonyos·鸿蒙
zhanshuo2 天前
不同品牌的设备也能“心有灵犀”?带你玩转鸿蒙分布式跨端协同
harmonyos
万少2 天前
云测试提前定位和解决问题 萤火故事屋 上架流程
前端·harmonyos·客户端
htt23213 天前
用uniapp开发鸿蒙应用(暂停更新-根据项目更新,现在项目未开始)
华为·uni-app·harmonyos