学习鸿蒙,你一定要熟知的这几个重要知识点?_stage与fa那个主流(1)

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新HarmonyOS鸿蒙全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img

img
img
htt

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上鸿蒙开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注鸿蒙)
img

正文

将下面的内容,添加到配置文件末尾。记得将「用户名目录」修改为你电脑的用户名。

export HARMONY_HOME=/Users/用户名目录/Library/Huawei/
export PATH= H A R M O N Y H O M E / o h p m / b i n : HARMONY_HOME/ohpm/bin: HARMONYHOME/ohpm/bin:PATH

保存文件,执行下面命令立即生效。

  • 如果配置文件是 .bash_profile,执行 source ~/.bash_profile
  • 如果配置文件是 .zshrc,执行 source ~/.zshrc

最后验证 ohpm 是否配置成功。

ohpm -v

但是在下载安装 ohpm 工具包和使用 ohpm 时可能会出现不同的错误,这里列了几个常见的错误。

ohpm install failed

Error: execute install task failed, component ohpm.zip.
Error: execute ‘ohpm install’ failed.

这是由于 NPM 以前版本中的一个 bug 导致,运行下面的命令即可解决。

sudo chown -R 501:20 “/Users/替换为你mac的用户名/.npm”

ohpm registry is empty

创建 Harmony 项目之后 build 时可能出现 ohpm registry is empty 的错误。

ohpm ERROR: The registry is empty - edit .ohpmrc file or use “ohpm config set registry your_registry” command to set registry.
ohpm ERROR: Install failed

想解决这个问题,我们需要在 DevEco Studio 中配置 ohpm 仓库的地址,按照下面的路径打开 Ohpm 窗口。

DevEco Studio -> Perferences -> Build, Execution, Deployment -> Ohpm

图片

点击 Optimize Config 会弹出了一个界面。

图片

ohpm registry 中输入 ohpm 仓库的地址并勾选。

https://repo.harmonyos.com/ohpm/

保存成功之后,重新 build 项目即可成功。


真机和模拟器无法运行

首先检查你的 DevEco Studio 版本是否是  3.1 Release,这个版本可能存在一些问题。

真机无法连接

我用 usb 连接真机,在 DevEco Studio 设备管理器中无法显示,用命令查看已经连接上了,我猜测是这个版本的问题,于是我尝试降级到 DevEco Studio 3.1 Beta2 正常了。

本地模拟器无法运行

从 DevEco Studio 3.1 开始支持两个模拟器,API 版本分别为 6、9,无论哪个模拟器都无法运行。

图片

于是我查看了 鸿蒙的开发文档 DevEco Studio >=3.1 本地模拟器仅支持以下系统中运行。

  • Windows 系统:内存推荐为 16GB 及以上。
  • macOS 系统:内存推荐为 8GB 及以上。如果是 ARM 版本的 macOS,macOS 版本需在 12.2 及以上,否则将无法运行本地模拟器。

但是我的 macOS 的版本是 12.5.1 不仅本地模拟器无法运行,而且真机连接了也无法显示。

我猜测这个问题应该也是 DevEco Studio 版本的原因,于是我尝试降级到 DevEco Studio 3.1 Beta2,成功运行 DevEco Studio 支持的模拟器。

但是这里需要注意的是如果你的 macOS >=10.14 and macOS < 12.2  只能运行 API 版本是 6 的模拟器。

如果有遇到和我一样问题的小伙伴,可以采用临时方案,尝试降级 DevEco Studio 版,等待官方解决吧。

如何解决安装错误

好不容易解决了开发工具的问题,满心欢喜想运行鸿蒙应用体验一下,结果安装应用时报错了,让我喝杯茶压压惊。

图片

这是因为运行的设备(模拟器和真机)和 SDK 版本的不匹配,因此会报 INSTALL_PARSE_FAILED_USESDK_ERROR 错误。

想解决这个问题,需要将 compileSdkVersioncompatibleSdkVersion 以及 SDK 版本需要与运行设备的 apiVersion 对应起来。

但是我们不能简单修改配置文件中 compileSdkVersion 和 c ompatibleSdkVersion 的版本号,因为使用不同的 HarmonyOS Sdk 版本,创建的 HarmonyOS 工程的目录结构和开发语言都不相同。

  • API Version 4~7 构建体系是由 Gradle 构建工具和构建插件组成,不要基于这个版本去开发,不然后期从 Gradle 迁移到 Hvigor 是件非常痛苦的事
  • API Version 8~9 构建体系是由 Hvigor 构建工具和构建插件组成

开发语言也不一样:

  • API Version >= 9 仅仅支持 ArkTS
  • API Version == 8 支持 ArkTS 和 JS
  • API Version == 7 支持 ArkTS 、 JS 和 Java
  • API Version < 7 支持 JS 和 Java

所以我们不能简单的修改  compileSdkVersioncompatibleSdkVersion 的版本,对于我们初学者,如果出现这个问题,建议重新创建一个新的工程。

新建项目时 Compile Sdk 应该选择与你运行的设备(模拟器和真机) apiVersion 相对应的版本号。

图片


如何查看运行的设备(模拟器和真机) apiVersion 的版本

这里我们需要用到 hdc 工具,hdc 的配置在前面已经介绍过了,hdc 的用法等价于 adbhdc 如何使用,后期我会总结好分享给大家。

hdc shell
getprop hw_sc.build.os.apiversion

输出结果即是设备(模拟器和真机) apiVersion 的版本。

运行项目常见错误

当我以为一切都正常的时候,运行项目,有出现了一个新的错误,真令人崩溃,跑起一个项目怎么这么难。

图片

对应的错误信息。

{
instancePath: ‘app.compileSdkVersion’,
keyword: ‘exclusiveMinimum’,
params: { comparison: ‘>’, limit: 7 },
message: ‘must be > 7’,
location: ‘/Users/用户名目录/Documents/codebase/harmonyOs/Application/build-profile.json5:4:27’
}

这是因为创建的是 Hvigor 工程,而 Hvigor 工程支持最低的 apiVersion 版本是 7,而我修改了 apiVersion 的版本 < 7, 因此运行的时候会出现上面的错误。因此我们应该选择 Compile Sdk 和你运行设备(模拟器和真机) apiVersion 相对应的版本号。

在鸿蒙模拟器,运行 Android 应用

Android 同学都体验过 Android Studio 自带的模拟器是多么的难用,网上也有很多 Android 模拟器,但是安装的门槛高,而且安装好了运行会出现很多问题,体验也不是那么的好。

DevEco Studio 提供的模拟器,相比于其它的模拟器,非常的好用,Android 同学可以在下载体验一下,在鸿蒙的模拟器上安装 Android 应用,对于简单的应用体验还是可以的。而且 DevEco Studio 的模拟器安装非常的简单。

如何安装鸿蒙的模拟器

按照图示方式打开 Device Manager。

图片

点击 New Emulator 按钮,按照图示,操作即可。

图片

如何安装 Android 应用到鸿蒙的模拟器

我们可以使用 adb 命令安装,也可以点击  Android Studio 上运行按钮

图片

,直接将 Android 应用安装到鸿蒙模拟器。

但是我们需要修改 Android 项目支持的 CPU/API 版本。因为 Harmony 的模拟器 CPU/API 是 x86,所以需要在 build.gradle 文件中添加 x86 的支持。

android {
compileSdkVersion 33
defaultConfig {

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注鸿蒙)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

compileSdkVersion 33
defaultConfig {

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注鸿蒙)
[外链图片转存中…(img-E8qTRGW6-1713189342184)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值