今日看点

鸿蒙 HarmonyOS 开发环境搭建与运行 Demo

发表于话题:HarmonyOS 2
发布时间:2021-06-02

 

前言:

 

对于华为而言,做鸿蒙的最好答案,也许不是为了追求眼前的速胜,而是为了不下牌桌等待机遇。

 

手机领域,鸿蒙式微。但物联网领域,技术难度并不大,虽然行业仍需要时日才会爆发,但依然是值得卡位的趋势。

 

而复盘商业翻盘史,会发现:许多成功企业,不是在领先者的地盘上硬打硬扛,而是先默默积累技术,保存火种,熬过寒冬;等新的技术路线出现时,联合群众,一起掀翻老技术路线上的既得利益者。

 

ASML的湿刻法打败日本的干刻法是这样,谷歌的安卓击败诺基亚的塞班也是如此。

 

鸿蒙给谁用?这不是一个抢答题。

鸿蒙Harmony OS发布有一段时间了,今天出于好奇,花了一晚上的时间,首先研究学习了一下开发环境的搭建,以及第一个

 

环境准备:

 

1、Node.js

2、Widnows

3、DevEco Studio Package

 

安装Node.js环境


下载地址:https://nodejs.org/zh-cn/

 

如下图,选择长期支持版即可。

安装过程省略,打开安装包,接下去一路傻瓜式安装即可。

安装完成之后打开CMD窗口,输入node -v 查看是否安装成功(查看版本),如下图:

安装HUAWEI DevEco Studio
IDE下载地址:https://developer.harmonyos.com/cn/develop/deveco-studio#download

下载需要有华为账号,目前只有window版本的。

Mac和Linux版本可能会在后续进行发布。

下载后会得到一个压缩包,安装程序就在这个压缩包里面,解压后双击打开。

到这里就安装成功了,接下来就可以开始运行IDE了。

 

首次运行IDE的时候会让你选择导入设置,可以选择跳过。接下来就是同意相关协议。接下来可以看到安装SDK的界面,需要安装一下SDK环境。过程中如果遇到失败,请点击重试如下图,完成安装,下载好SDK后,需要进行一下配置。打开configuration->setting

勾选下面内容,如图所示:

System Settings >> SDK Platforms >> JS & Java

System Settings >> SDK Tools >> Toolchains & Previewer

勾选完上述内容之后,点击下方按钮Apply,会弹出如下对话框,点击确定,进行下载。下载时间稍长,耐心等待。

如上,安装完成,可以开始愉快的开始自己的Hello World了。

 

js 3.0.0.80安装失败


如果全部是默认设置,可能会遇到Java SDK 下载正常,但是 JS SDK 下载失败,如何解决?

JS SDK 下载失败,可能存在以下原因:

 - 未安装 Node.js,请根据文章开头下载和安装 Node.js,并检查是否安装成功Node.js。

 - 你的网络受限导致失败或者下载缓慢,需要通过配置代理才能访问,请根据npm 代理设置进行处理。

 

方法一、设置 npm 仓库


对于国内用户,可以将 npm 仓库设置为华为公有云仓库。在命令行工具中执行如下命令,重新设置 npm 仓库地址后,再执行 JS SDK的下载。

npm config set registry https://mirrors.huaweicloud.com/repository/npm/

方法二、手动下载JS拷贝到SDK文件中


下载地址:

http://update.dbankcdn.com/TDS/data/files/p16/s165/G6781/g6780/v457030/f1/js-windows-3.0.0.80.zip

解压然后将里面的内容拷贝到SKD安装文件夹下的JS文件夹:

Gradle 插件下载失败,如何解决?


Gradle 下载失败,可能存在如下两种原因:

网络受限,请检查网络设置或者 DevEco Studio 代理设置(步骤如下)。

网络正常,但是通过 DevEco Studio 下载缓慢或失败,可以通过如下方式解决。
 a. 点击链接 下载 Gradle 插件,建议使用下载工具进行下载。

 b. 打开“此电脑”,在文件夹地址栏中输入 %userprofile%,进入个人数据界面。

c. 进入 .gradle > wrapper > dists > gradle-5.4.1-all 目录,将下载的“gradle-5.4.1-all.zip”拷贝到该目录下临时文件夹中。如果存在多个临时文件夹,建议每个文件夹都拷贝一份。

 d. 重启DevEco Studio,等待工程同步完成。

 

DevEco Studio 代理设置


DevEco Studio 开发环境需要依赖于网络环境,需要连接上网络才能确保工具的正常使用,可以根据如下两种情况来配置开发环境:

如果可以直接访问 Internet,只需进行[设置npm仓库]和[下载HarmonyOS SDK] 操作。

如果网络不能直接访问 Internet,需要通过代理服务器才可以访问,请根据本章节内容逐条设置开发环境。
**更多内容请参考此处,点击跳转**

 

设置 npm 代理


**只有在同时满足以下两个条件时,需要配置 npm 代理,否则,请跳过本章节。**

需要使用 JS 语言开发 HarmonyOS 应用。

网络不能直接访问 Internet,而是需要通过代理服务器才可以访问。这种情况下,配置 npm 代理,便于从 npm 服务器下载 JS 依赖。

 

打开命令行工具,按照如下方式进行 npm 代理设置和验证。

 1. 执行如下命令设置 npm 代理。

 a. 如果使用的代理服务器需要认证,请按照如下方式进行设置(请将 user、password、proxyserver 和 port 按照实际代理服务器进行修改)。

npm config set proxy http://user:password@proxyserver:portnpm config set https-proxy http://user:password@proxyserver:port

 

 b. 如果使用的代理服务器不需要认证(不需要帐号和密码),请按照如下方式进行设置。

 

npm config set proxy http:proxyserver:portnpm config set https-proxy http:proxyserver:port

 

 2. 代理设置完成后,执行如下命令进行验证。

 

npm info express

执行结果如下图所示,则说明代理设置成功。

鸿蒙OS 运行Hello World


HarmonyOS的相关框架及文档在Gitee上面。

 

地址: https://gitee.com/openharmony

DevEco Studio 开发环境配置完成后,可以通过运行 HelloWorld 工程来验证环境设置是否正确。以 Wearable 工程为例,在 Wearable 远程模拟器中运行该工程。

 

 

打开 DevEco Studio,在欢迎页点击 Create HarmonyOS Project,创建一个新工程。

选择设备类型和模板,以 Wearable 为例,选择 Empty Feature Ability(Java),点击 Next。

从下面界面中可以看出,IDE支持基于TV ,Wearable,Lite Wearable三种硬件平台的软件开发。

 3. 填写项目相关信息,保持默认值即可,点击 Finish。

 4. 工程创建完成后,DevEco Studio 会自动进行工程的同步,同步成功如下图所示。首次创建工程时,会自动下载 Gradle 工具(Gradle 下载失败如何解决? 请看上文中的步骤),时间较长,请耐心等待。

 5. 在DevEco Studio 菜单栏,点击Tools > HVD Manager。首次使用模拟器,需下载模拟器相关资源,请点击 OK,等待资源下载完成后,点击模拟器界面左下角的 Refresh 按钮。

 6. Tools > DevEco Login > Login 在浏览器中弹出华为帐号登录界面,请输入已实名认证(未实名认证请完成实名认证)的华为帐号的用户名和密码进行登录。

 > 说明: 推荐使用 Chrome 浏览器,如果使用 Safari、360 等其他浏览器,要取消 阻止跨站跟踪 和 阻止所有Cookie 功能。

 

 7. 然后再次在DevEco Studio 菜单栏,点击Tools > HVD Manager,会弹出设备列表,选择Wearable设备,并点击点击三角形按钮,运行模拟器,如下图。

 8. 点击 DevEco Studio 工具栏中的点击放大按钮运行工程,或使用默认快捷键 Shift+F10 运行工程。当然要等待Gradle下载完成之后

 9. 点击 DevEco Studio 工具栏中的点击放大按钮运行工程,或使用默认快捷键 Shift+F10 运行工程。

 

 10. 在弹出的 Select Deployment Target 界面选择 Connected Devices,点击 OK 按钮。

 

 11. DevEco Studio 会启动应用的编译构建,完成后应用即可运行在 Remote Device 上。

 

可以看到entry打印的命令以及日志如下:

09/24 00:05:53: Launching com.example.myapplication $ hdc shell am force-stop com.example.myapplication $ hdc file send E:/WorkSpace/DevEcoStudioProjects/MyApplication/entry/build/outputs/hap/debug/entry-debug-unsigned.hap /sdcard/entry-debug-unsigned.hap $ hdc shell bm install -p /sdcard/entry-debug-unsigned.hap $ hdc shell am start -n "com.example.myapplication/com.example.myapplication.MainAbilityShellActivity" Client not ready yet..Waiting for process to come online Waiting for process to come online Connected to process 30346 on device huawei-gll_al00-127.0.0.1:18888 Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page. E/e.myapplicatio: GcSupervisor: parse parameters failed D/AwareBitmapCacher: handleInit switch not opened pid=30346

 

 

总结:

 

出于新鲜和好奇,参照官网,搭建了一下HarmonyOS开发环境,IDE来看,还算友好,毕竟与Android Studio一样,都是基于IntelliJ IDEA Community 版开发的IDE。

比较Mac和Linux的话也没法比,毕竟我没用过Mac的IDE;怎么说呢,天空任鸟飞,海阔凭鱼跃,基础环境搭建好,接下来的就是语言发挥优势了,基础环境没什么好说的,都差不多,软件主要还是要靠强大的语言来创造。

接下来可能会在后续的业余时间多找找相关的资料,学习下相关内容的开发,作为一个技术人员,或许不久的将来或多或少会接触到相关的模块,技术嘛,多多益善。

 

后话:

 

在AIoT领域,并不存在华为手机一样的卡脖子问题。根据华为开发者大会公布的数据来看,在AloT领域做生态,华为还是有不少本钱的,小兄弟就有一堆:

 

1)与800家合作伙伴构建了HiLink智能硬件生态,打造出超过3000款产品,拥有5000万+的智能硬件用户,累计发货量超过2.2亿;

 

2)与智能硬件搭配使用的华为智慧生活APP已经拥有4亿装机量,激活用户数达到5000万,智慧生活APP每天请求次数达到10.8亿次;

 

3)华为HiCar已经合作了超过150款汽车,2021年将计划预装超过500万台。

 

加上华为自身在智能手表、智慧屏、VR、体脂秤等多个领域的布局,鸿蒙在物联网领域的起点就领先了对手一大截。

 

当然,这一切的前提依然是,华为不能亲自下场做豆浆机、空调、油烟机,不要与自己的客户抢生意。

 

 

 

 

 

 

 

版权声明: 本文为 InfoQ 作者【软测小生】的原创文章。


标签组:[软件] [华为

本文来源:https://www.kandian5.com/articles/23917.html

相关阅读

为什么慈禧吃了羊下水厨师被满门抄斩

吃穿住行中,吃被排在首位,这或许也验证了中国人以食为天的民族特点。虽然中国开发出了各种食物的吃法,各地形成了各种菜系,可是,在落后的时代,能够满口腹之欲的,大多却是那些手握权力财富的少部分人。在满清末...

2025-09-15

贾姬在厕所与野猪相遇为什么没人敢救她

汉景帝妃子上厕所遭遇野猪,侍卫抗旨不救,太后为何赏大臣百金!。提起来有点荒诞,却是史上真实发生过的事件。上厕所与野猪遭遇的女子就是汉景帝的嫔妃贾姬,翻开史料:这个贾姫大有来头,她是中山靖王刘胜的生母,...

2025-09-15

清朝灭亡后那些深宫里的女人去哪了

1908年11月14日,在位长达34年但年仅38岁的光绪皇帝就英年早逝了,一天以后,统治中国近半个世纪的慈禧老佛爷也撒手人寰,半个月之后,年仅2岁多的溥仪继位,这就是末代皇帝宣统帝!溥仪登基后,尊光绪...

2025-09-15

秦宜禄的妻子杜氏为什么会被吕布和曹操霸占呢

自古以来,有人爱江山却更爱美人,也有人只要江山而舍弃美人的,然而毕竟英雄难过美人关。想当年吴三桂那貌美如花的妻子陈圆圆居然被李自成的手下刘宗敏给抢了去,他一气之下居然投降清军,把多尔衮给引进关中了。这...

2025-09-15

王献之很爱自己的妻子为何最后还是被逼离婚了

一直以来,很多人都认为,古代男子肯定都很想娶公主,毕竟当皇帝的女婿,一下可以少奋斗几十年,甚至都不用奋斗了。但实际并不是如此,古代男子几乎是不愿娶公主的,不仅唐朝如此,很多朝代都这样。而今天的主人公也...

2025-09-15

秀才为什么因为一只鸭子被推上刑场

老一辈的人常说,忍一时风平浪静,退一步海阔天空。这句话说的其实就是让人在遇到事情的时候要冷静,不要因为一时冲动而做出让人后悔莫及的事情来。在清代学者俞樾所著的《右台仙馆笔记》里,讲了这么一个故事。说是...

2025-09-15

伍子胥逃亡的过程中真的一夜愁白了头吗

公元前522年,楚国国君听信费无忌的谗言,将伍子胥的父亲伍奢杀害,派人去杀伍子胥。伍子胥得到消息后连忙逃亡吴国。伍子胥的逃亡路线,从楚国到吴国必须要经过韶关,韶关位于吴楚交界之地,向来有重兵把守,而此...

2025-09-15

古代皇帝吃剩下的饭菜怎么办

古代皇帝吃饭动不动就是数十盘菜,皇帝一般都是吃几口就换,皇帝吃饭剩下的食物一般如何处理?中国曾经历了数千年的封建王朝,只不过每一个朝代都诞生了独特的文明,甚至有很多人事物都成为了时代的象征,由于中国古...

2025-09-15

古代殉葬妃子临死前经历了什么

在古代,帝王逝去之后,宫内会特别注重操办丧事。选择合适的地方将其安葬,还有不少嫔妃进行陪葬。这种方式让人觉得难以接受。殉葬制度原本起源在商代,当时的奴隶主在自己死去之后,就要把自己的私有财产带走,这其...

2025-09-15

同治帝十九岁时病死他的后妃怎么处理

1875年1月12日黄昏时分,十几位王公重臣接到诏命,匆匆入宫,来到养心殿西暖阁候旨。原来清朝的第十位皇帝爱新觉罗·载淳,即同治帝,已经走到了人生的尽头。当晚酉时(17~19时),同治皇帝咽下最后一气...

2025-09-15