鸿蒙软件开发1-1 从零入门到hello world

目录

简介

1.鸿蒙软件运行环境

2.下载、安装编译器DevEco Studio

3. 配置开发环境

3.1第一次启动配置

3.2 非第一次启动配置

4.创建Hello World工程

5.根据真机设备适配SDK版本、API版本、编译工具版本及类型

6.创建密钥、申请认证文件

6.1自动签名

6.2手动配置签名

6.2.1 生成密钥文件

6.2.2 申请调试证书和调式Profile认证文件

7.配置运行环境

8.调试设置

9.运行

简介

        本系列是windows系统下、采用ArkTS语言、ArkUI框架、deveco studio编译器学习纯鸿蒙软件研发,采用API version 9进行。本小节主要介绍如何从零开始搭建开发环境、下载、安装、配置编译器、配置开发环境、创建新工程、创建密钥、申请应用认证、应用真机调试运行~,纯小白,一步步学习,记录一下过程便于查询。

1.鸿蒙软件运行环境

        本系列主要是在windows系统下进行,运行环境要求如下:

        (1)操作系统:Windows10 64位

        (2)内存:8GB及以上

        (3)硬盘:100GB及以上

        (4)分辨率:1280*800像素及以上

2.下载、安装编译器DevEco Studio

        (1)下载编译器:HUAWEI DevEco Studio和SDK下载和升级 | HarmonyOS开发者

        (2)安装编译器:文档中心

        主要安装步骤为:

        下载完成后,双击下载的编译器exe,进入编译器安装向导,在如下界面选择安装路径,之后点击下一步:

鸿蒙软件开发1-1 从零入门到hello world_第1张图片

        到如下安装界面时,可只勾选第一项,其他步骤点击Next即可。

鸿蒙软件开发1-1 从零入门到hello world_第2张图片

3. 配置开发环境

        配置开发环境主要包括:第一次启动DevEco studio的配置,第一次启动点击错了的配置。

        主要配置内容包括:node.js配置,SDK及工具链下载及配置、HDC工具环境变量配置。

3.1第一次启动配置

        (1)运行已安装的DevEco Studio,首次使用,选择Do not import settings,单击OK。

        (2)进入DevEco Studio操作向导界面,修改npm默认的仓,由于本人不需要,直接跳过了该步骤,需要的可以参考文档中心下的配置Deveco Studio代理和npm代理部分。如果使用API4-7,还需配置Gradle代理。

        (3)Node.js配置:可以指定本地已安装的Node.js(Node.js版本要求为v14.19.1及以上,且低于v15.0.0;对应的npm版本要求为6.14.16及以上,且低于7.0.0版本);如果本地没有合适的版本,可以选择Download按钮,建议刚学的人可以选择直接Download,避免出现node.js不适配的情况,点击下一步会进入下载,finish即可。

鸿蒙软件开发1-1 从零入门到hello world_第3张图片

        (4)SDK及工具链下载:在SDK Components Setup界面,设置OpenHarmony SDK和HarmonyOS SDK存储路径,单击Next进入下一步。

        ***注意:OpenHarmony SDK和HarmonyOS SDK不能设置为同一个路径,且路径中不能包含中文字符。

鸿蒙软件开发1-1 从零入门到hello world_第4张图片

        弹出License Agreement串口,选中左边某项,右边会出现协议及同意和拒绝协议的按钮,均勾选同意后,左侧均为√,即可Next开始下载SDK。下载完毕后,直接Finish即可。

鸿蒙软件开发1-1 从零入门到hello world_第5张图片

        (5)HDC工具环境变量配置

        HDC是为开发者提供HarmonyOS应用/服务的调试工具,为方便使用HDC工具,请为HDC工具及其端口号设置环境变量。

        在此电脑 > 属性 > 高级系统设置 > 高级 > 环境变量中,添加HDC端口变量名为:HDC_SERVER_PORT,变量值可设置为任意未被占用的端口,如7035。

鸿蒙软件开发1-1 从零入门到hello world_第6张图片

        在系统或者用户的path变量中,添加HDC工具路径,HDC工具路径为:HarmonyOS SDK安装目录/toolchains/{版本号}。环境变量配置完成后,关闭并重启DevEco Studio。

3.2 非第一次启动配置

        如果比较着急在第一次启动时,关闭了向导进入了编译器的欢迎界面,可以通过如下方式对上述步骤进行配置。

        在DevEco Studio欢迎页,左下角找到Help>Diagnose Development Environment,打开Diagnose Development Environment弹窗,主要对Basic Configurations中的三项进行依次下载原装,设置好后再按照上述步骤进行HDC配置即可。配置完成后,界面如下:

鸿蒙软件开发1-1 从零入门到hello world_第7张图片

4.创建Hello World工程

        进入Deveco Studio欢迎界面后,点击Create Project选项,创建一个新工程,选择“Empty Ability”模板,然后单击Next。

鸿蒙软件开发1-1 从零入门到hello world_第8张图片

        填写工程相关信息,单机Finish。(此处有误,已作了修正,修正后如下图片)

鸿蒙软件开发1-1 从零入门到hello world_第9张图片

        工程创建完成后,DevEco Studio会自动进行工程的同步,同步成功如下图所示:

鸿蒙软件开发1-1 从零入门到hello world_第10张图片

5.根据真机设备适配SDK版本、API版本、编译工具版本及类型

        真机环境对于不同的SDK、API、编译工具版本及类型具有一定的适配度,如果不适配,运行会触发如下错误:

鸿蒙软件开发1-1 从零入门到hello world_第11张图片

        该错误的原因是SDK、API、编译工具版本及类型存在不适配,在设备中运行应用/服务时,build.gradle(API4-7)或build-profile.json5(API8及以上版本)文件中的compileSdkVersion和compatibleSdkVersion,以及SDK Stage(Beta或Release)需要与设备的apiVersion、releaseType相互匹配才能正常运行。解决办法:

        (1)在HarmonyOS SDK存储目录下的Sdk\hmscore\{版本号}\toolchains文件下打开CMD命令行工具。

鸿蒙软件开发1-1 从零入门到hello world_第12张图片

        (2)打开你要测试的真机设备,点击设置>关于平板电脑>HarmonyOS版本,查看手机/平板的HarmonyOS版本。

        (3)执行如下命令进行查询真机设备的apiVersion和releaseType取值。

        在手机/平板HarmonyOS 3.1 Release设备上:

hdc -c shell 
getprop persist.sys.ohc.apiversion
getprop persist.sys.ohc.releasetype

        在手机/平板HarmonyOS 3.1 Release之前版本的设备上:

hdc -c shell
getprop hw_sc.build.os.apiversion
getprop hw_sc.build.os.releasetype

        由于我的真机版本是4.0,所以嵌入代码和查询结果如下:

鸿蒙软件开发1-1 从零入门到hello world_第13张图片

        (4)点击File > Settings > SDKs > HarmonyOS,查看compileSdkVersion对应的SDK stage。例如,下图中API Version 9对应的Stage为Release。

鸿蒙软件开发1-1 从零入门到hello world_第14张图片

        (5)根据查询的设备apiversion、releaseType,以及SDK Stage的取值,再查询下表中的匹配关系,来修改compileSdkVersion和compatibleSdkVersion的值。其中compileSdkVersion需要修改工程和各模块build.gradle中的取值;compatibleSdkVersion需要修改各模块下的build.gradle中的取值。

apiVersion

releaseType

compileSdkVersion

SDK Stage

compatibleSdkVersion

4

Release

4

Release

4

4

Release

5

Release

4

5

Release

5

Release

4或5

5

Release

5

Release

4或5

5

Release

6

Release

4或5

5

Release

6

Release

4或5

6

Release

5

Release

4或5

6

Release

6

Release

4或5或6

6

Release

5

Release

4或5

6

Release

6

Release

4或5或6

7

Release

7

Release

4或5或6或7

7

Release

6

Release

4或5或6

8

Release

6

Release

4或5或6

8

Release

8

Release

8

9

Release

9

Release

9

        由于我的真机的apiversion、releaseType,以及SDK Stage的取值分别为9,release以及release,所以确定我的compileSdkVersion和compatibleSdkVersion的值均为9。

        (6)打开模块的build.gradle(API4-7)或打开工程的build-profile.json5(API8-9)文件,查看compileSdkVersion、compatibleSdkVersion。

鸿蒙软件开发1-1 从零入门到hello world_第15张图片

        当前应用版本和设备镜像版本匹配后,如果仍然报该错误,且设备镜像版本已更新为3.1 Release版本,则说明当前使用的DevEco Studio版本与设备运行的镜像版本不匹配,请升级DevEco Studio至3.1 Release版本,在新版本DevEco Studio上进行运行/调试。

6.创建密钥、申请认证文件

        匹配好版本后,需要先对工程进行签名,然后才能运行在真机设备中,签名方式分为自动和手动两种。

6.1自动签名

        (1)想要使用自动签名需要先进行华为账号登陆,进入如下界面,点击允许。

鸿蒙软件开发1-1 从零入门到hello world_第16张图片

        (2)单击File > Project Structure > Project > Signing Configs界面勾选Automatically generate signature,等待自动签名完成即可,单击OK。如下图所示:

鸿蒙软件开发1-1 从零入门到hello world_第17张图片

6.2手动配置签名

        HarmonyOS应用/服务通过数字证书(.cer文件)和Profile文件(.p7b文件)来保证应用/服务的完整性。在申请数字证书和Profile文件前,首先需要通过DevEco Studio或命令行工具来生成密钥(存储在格式为.p12的密钥库文件中)和证书请求文件(.csr文件)。然后,申请调试证书和调试Profile文件。最后,将密钥(.p12)文件、数字证书(.cer)文件和Profile(.p7b)文件配置到工程中。

  • 密钥:包含非对称加密中使用的公钥和私钥,存储在密钥库文件中,格式为.p12,公钥和私钥对用于数字签名和验证。
  • 证书请求文件:格式为.csr,全称为Certificate Signing Request,包含密钥对中的公钥和公共名称、组织名称、组织单位等信息,用于向AppGallery Connect申请数字证书。
  • 数字证书:格式为.cer,由华为AppGallery Connect颁发。
  • Profile文件:格式为.p7b,包含HarmonyOS应用/服务的包名、数字证书信息、描述应用/服务允许申请的证书权限列表,以及允许应用/服务调试的设备列表(如果应用/服务类型为Release类型,则设备列表为空)等内容,每个应用/服务包中均必须包含一个Profile文件。

        如果6.1自动配置方式失败,或者想要自己设定和知道签名过程中各个文件所处位置,可以选择手动配置签名,步骤如下:

6.2.1 生成密钥文件

        (1)创建密钥:点击编译器顶部菜单栏Build>Generate Key and CSR,进入如下弹窗,注意Validity:证书有效期,建议设置为25年及以上,覆盖应用/服务的完整生命周期。

鸿蒙软件开发1-1 从零入门到hello world_第18张图片

        该步骤完成后会在对应路径下生成.p12文件。记住路径,后续需要用到。

        (2)创建CSR:点击Next进入下一步,创建Generate CSR,同样可以选择已有或者新建。

鸿蒙软件开发1-1 从零入门到hello world_第19张图片

        该步骤完成后会在对应路径下生成.csr文件,记住路径,后续需要用到。

        也可以通过cmd命令行实现该步骤,参考:文档中心

6.2.2 申请调试证书和调式Profile认证文件

        (1)打开AppGallery Connect网页,参考:AppGallery Connect

鸿蒙软件开发1-1 从零入门到hello world_第20张图片

        (2)创建我的项目:在顶部用户与访问下拉列表中点击选择我的项目,新建项目,进入如下界面输入项目名称。

鸿蒙软件开发1-1 从零入门到hello world_第21张图片

        填写好后创建并继续>开通分析服务>数据处理位置选择中国>开通。

鸿蒙软件开发1-1 从零入门到hello world_第22张图片

        (3)创建应用:创建成功后会直接切入项目设置界面,点击顶部的添加应用按钮,如下填写信息。注意:包名必须和创建工程处一致!!!

鸿蒙软件开发1-1 从零入门到hello world_第23张图片
        (4)申请调试证书:将顶部切换到用户与访问,在左侧列表选择证书管理,切换到证书管理界面,点击新增证书。填写信息,提交即可。其中CSR即为创建密钥时生成的.cer文件。

鸿蒙软件开发1-1 从零入门到hello world_第24张图片

        生成文件后,将该文件下载到本地,保存好路径并记住,之后配置用得上。

         (5)添加设备:在左侧列表中找到设备管理,进入设备管理页,点击右上角的添加设备,填写信息后提交。

鸿蒙软件开发1-1 从零入门到hello world_第25张图片

        其中设备的UDID的获取方式为使用PC连接手机后,进入HDC目录(一般为:HarmonyOS SDK安装目录/toolchains/{版本号}),打开命令行工具。

鸿蒙软件开发1-1 从零入门到hello world_第26张图片

        输入hdc shell bm get --udid命令,获取设备的UDID。

        (6)申请profile文件:将顶部菜单栏切换到我的项目下,点击之前创建的项目,在左侧列表中选择HarmonyOS应用>HAP Provision Profile>添加,进行调试证书的申请。

鸿蒙软件开发1-1 从零入门到hello world_第27张图片

        如下填写信息:

鸿蒙软件开发1-1 从零入门到hello world_第28张图片

        提交后下载该文件到本地,保存并记住路径,之后用于配置。

7.配置运行环境

        按照6中的步骤,已经完成了密钥(.p12)文件、数字证书(.cer)文件和Profile(.p7b)文件的生成,需要将这些文件配置好,用于调试项目。点击编译器File>Project Structure>选择Signing Configs选项卡。如下进行配置。

鸿蒙软件开发1-1 从零入门到hello world_第29张图片

        点击应用即可,签名配置完毕。

8.调试设置

        除了签名外,还需要进行调试设置,主要是设置HAP包安装方式,

        在调试阶段,HAP包在设备上的安装方式有2种,可以根据实际需要进行设置。

  • 安装方式一:先卸载应用/服务后,再重新安装,该方式会清除设备上的所有应用/服务缓存数据(默认安装方式)。
  • 安装方式二:采用覆盖安装方式,不卸载应用/服务,该方式会保留应用/服务的缓存数据。

        设置方法为:单击Run > Edit Configurations,设置指定模块的HAP包安装方式,勾选“Keep Application Data”,则表示采用覆盖安装方式,保留应用/服务缓存数据。

鸿蒙软件开发1-1 从零入门到hello world_第30张图片

        如果一个工程中同一个设备存在多个模块(如Phone设备,存在entry和feature模块),且存在模块间的调用时,在调试阶段需要同时安装多个模块的hap包到设备中。此时,需要在待调试模块的设置项中勾选“Deploy Multi Hap Packages”。

鸿蒙软件开发1-1 从零入门到hello world_第31张图片

9.运行

        点击上方的即可运行,运行后界面如下。

        此时就完成了我们的第一个鸿蒙应用啦~

你可能感兴趣的:(harmonyos)