一,配置Openharmony SDK
前提条件:
1、运行已安装的DevEco Studio,首次使用,请选择Do not import settings,点击OK
2、接下来DevEco Studio会根据向导指示,进入到SDK下载界面,HarmonyOS SDK Location选择本地解压的SDK包路径,然后点击Next
3、SDK安装完成后,点击Finish,界面会进入到DevEco Studio欢迎页。进入Sdkjs2.2.0.0build-toolsace-loader目录,然后在该目录下运行命令行工具,分别执行如下命令,直至安装完成。
npm cache clean -f
npm install
注意:运行不成功的话可能需要下载npm并进行环境配置
npm安装及环境配置
3、cmd输入以下两个命令查看是否安装成功,若显示版本号则安装成功
node- v
npm- v
4、找到安装目录、添加两个文件目录
5、cmd下输入两条命令
npm config set prefix “D:Program Filesnodejsnode_global” //node的安装路径/2
npm config set cache “D:Program Filesnodejsnode_cache”
6、环境变量配置
系统变量:变量名–NODE_PATH 值–D:Program Filesnodejsnode_modules
用户变量:Path中编辑如下两条即可
二、创建openharmony新工程
针对OpenHarmony应用开发,只能通过导入Sample工程的方式来创建一个新工程。目前,支持OpenHarmony应用开发的Sample工程,请选择导入含有“This sample is intended for novices at developing OpenHarmony applications.”说明的Sample。
1、在DevEco Studio的欢迎页,进入Configure (或图标) > Settings > Version Control > Git界面,点击Test按钮检测是否安装Git工具。
2、未安装,请点击Download and Install,DevEco Studio会自动下载并安装。安装完成后,请开始导入Sample。
3、在DevEco Studio的欢迎页,点击Import HarmonyOS Sample按钮,导入Sample工程
4、选择common下的JsHelloWorld工程,然后点击Next。
5、设置App Name和Project Location,然后点击Finish,等待Sample工程导入完成。
6、Sample导入后,请打开工程下的build.gradle,修改hap插件的版本号为“2.4.4.3-RC”。
7、修改完成后,点击右上角Gradle中的按钮,重新同步工程。
8、等待工程同步完成,同步成功后,便可以进行OpenHarmony应用开发了。
三、配置openharmony应用签名信息
一、生成密匙和请求文件
1、在主菜单栏点击Build > Generate Key and CSR。
2、在Key Store File中,可以点击Choose Existing选择已有的密钥库文件;如果没有密钥库文件,点击New进行创建。下面以新创建密钥库文件为例进行说明。
3、在Create Key Store窗口中,填写密钥库信息后,点击OK。
Key Store Path:选择密钥库文件存储路径。
Password:设置密钥库密码,必须由大写字母、小写字母、数字和特殊符号中的两种以上字符的组合,长度至少为8位。请记住该密码,后续签名配置需要使用。
Confirm Password:再次输入密钥库密码。
4、在Generate Key界面中,继续填写密钥信息后,点击Next。
5、在Generate CSR界面,选择密钥和设置CSR文件存储路径。
6、点击OK按钮,创建CSR文件成功,可以在存储路径下获取生成的密钥库文件(.p12)和证书请求文件(.csr)。
二、生成应用证书文件
进入DevEco Studio安装目录的Sdktoolchainslib文件夹下(该SDK目录只能是OpenHarmony SDK,配置方法可参考配置OpenHarmony SDK)https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/%E9%85%8D%E7%BD%AEOpenHarmony-SDK.md,打开命
令行工具,执行如下命令(如果keytool命令不能执行,请在系统环境变量中添加JDK的环境变量)。其中,只需要修改输入和输出即可快速生成证书文件,即修改**-infile指定证书请求文件csr文件路径,-outfile**指定输出证书文件名及路径。
keytool -gencert -alias "OpenHarmony Application CA" -infile myApplication_debug.csr -outfile myApplication_debug.cer -keystore OpenHarmony.p12 -sigalg SHA384withECDSA -storepass 123456 -ext KeyUsage:"critical=digitalSignature" -validity 3650 -rfc
关于该命令的参数说明如下:
· alias:用于签发证书的CA私钥别名,OpenHarmony社区CA私钥存于OpenHarmony.p12密钥库文件中,该参数不能修改。
· infile:证书请求(CSR)文件的路径。
· outfile:输出证书链文件名及路径。
· keystore:签发证书的CA密钥库路径,OpenHarmony密钥库文件名为OpenHarmony.p12,文件在OpenHarmony SDK中Sdktoolchainslib路径下,该参数不能修改。请注意,该OpenHarmony.p12文件并不是生成密钥和证书请求文件https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/%E9%85%8D%E7%BD%AEOpenHarmony%E5%BA%94%E7%94%A8%E7%AD%BE%E5%90%8D%E4%BF%A1%E6%81%AF.md中生成的.p12文件。
· sigalg:证书签名算法,该参数不能修改。
· storepass:密钥库密码,密码为123456,该参数不能修改。
· ext:证书扩展项,该参数不能修改。
· validity:证书有效期,自定义天数。
· rfc:输出文件格式指定,该参数不能修改。
注意:使用keytool需要在当前目录下打开
三、生成应用profile文件
进入Sdktoolchainslib目录下,打开命令行工具,执行如下命令。
java -jar provisionsigtool.jar sign --in UnsgnedReleasedProfileTemplate.json --out myApplication_debug_Provision.p7b --keystore OpenHarmony.p12 --storepass 123456 --alias "OpenHarmony Application Profile Release" --sigAlg SHA256withECDSA --cert OpenHarmonyProfileRelease.pem --validity 365 --developer-id ohosdeveloper --bundle-name 包名 --permission 受限权限名(可选) --permission 受限权限名(可选) --distribution-certificate IDE.cer
关于该命令的参数说明如下:
· provisionsigtool:Profile文件生成工具,文件在OpenHarmony SDK的Sdktoolchainslib路径下。
· in:Profile模板文件所在路径,文件在OpenHarmony SDK中Sdktoolchainslib路径下,该参数不能修改。
· out:输出的Profile文件名和路径。
· keystore:签发证书的密钥库路径,OpenHarmony密钥库文件名为OpenHarmony.p12,文件在OpenHarmony SDK中Sdktoolchainslib路径下,该参数不能修改。
· storepass:密钥库密码,密码为123456,该参数不能修改。
· alias:用于签名Profile私钥别名,OpenHarmony社区CA私钥存于OpenHarmony.p12密钥库文件中,该参数不能修改。
· sigalg:证书签名算法,该参数不能修改。
· cert:签名Profile的证书文件路径,文件在OpenHarmony SDK中Sdktoolchainslib路径下,该参数不能修改。
· validity:证书有效期,自定义天数。
· developer-id:开发者标识符,自定义一个字符串。
· bundle-name:填写应用包名。
· permission:可选字段,如果不需要,则可以省去此字段;如果需要添加多个受限权限,则如示例所示重复输入。受限权限列表如下:ohos.permission.READ_CONTACTS、ohos.permission.WRITE_CONTACTS。
· distribution-certificate:生成应用证书文件https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/%E9%85%8D%E7%BD%AEOpenHarmony%E5%BA%94%E7%94%A8%E7%AD%BE%E5%90%8D%E4%BF%A1%E6%81%AF.md中生成的证书文件。
四、配置应用签名信息
打开File > Project Structure,点击Project > Signing Configs > debug窗口中,去除勾选“Automatically generate signing”,然后配置指定模块的调试签名信息。
· Store File:选择密钥库文件,文件后缀为.p12,该文件为生成密钥和证书请求文件中生成的.p12文件。
· Store Password:输入密钥库密码,该密码为生成密钥和证书请求文件https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/%E9%85%8D%E7%BD%AEOpenHarmony%E5%BA%94%E7%94%A8%E7%AD%BE%E5%90%8D%E4%BF%A1%E6%81%AF.md中填写的密钥库密码保持一致。
· Key Alias:输入密钥的别名信息,与生成密钥和证书请求文件中填写的别名保持一致。
· Key Password:输入密钥的密码,与Store Password保持一致。
· Sign Alg:签名算法,固定为SHA256withECDSA。
· Certpath File:选择生成应用证书文件中生成的数字证书文件,文件后缀为.cer。
设置完签名信息后,点击OK进行保存,然后可以在工程下的build.gradle中查看签名的配置信息。
构建带签名信息的HAP(Debug类型)打开左下角的OhosBuild Variants,检查并设置模块的编译构建类型为debug,默认类型为debug。
在主菜单栏,点击Build > Build APP(s)/Hap(s) > Build Hap(s),生成已签名的Debug HAP。
四、推送到开发板/设备1、下载hdc_std工具2、配置环境变量(Windows)将hdc_std.exe添加到系统的环境变量中。在cmd中输入**”hdc_std -h”**验证环境变量是否添加成功。
1、使用hdc_std安装Hap使用u***连接开发板后,使用**”hdc_std install <file_path>”**来安装编译好的Hap 注意:file path指的路径
GITEE地址:
https://gitee.com/jltfcloudcn/openharmonyIOTAPP/blob/master/OpenHarmony%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E5%AE%89%E8%A3%85%E6%B5%81%E7%A8%8B.pdf
附件: