OpenHarmony Windows环境IDE打包ARK应用教程
OpenHarmony Windows环境IDE打包ARK应用教程
1.下载并安装IDE, 当前版本3.0.0.600
https://developer.harmonyos.com/cn/develop/deveco-studio
直接解压安装。安装完成后,首次打开IDE,按照引导设置npm位置并下载SDK。
当前默认下载的是OpenHarmony SDK的API7。HarmonyOS Legacy SDK 对应API4-6,可以手动在HarmonyOS Legacy SDK页面选择下载或者打开工程的时候按照提示下载。
2.替换自己的SDK
自己本地编译镜像的情况下,我们需要使用与本地环境一致的SDK,这时候需要我们本地编出SDK,并替换到IDE的SDK路径下。
OHOS代码根目录下执行命令编出SDK:
./build.sh --product-name ohos-sdk
将out\ohos-arm64-release\ohos-sdk\windows\ets路径下的生成文件覆盖到本地SDK的SDK\ets\3.0.0.0路径下,
将out\ohos-arm64-release\ohos-sdk\windows\js路径下的生成文件覆盖到本地SDK的SDK\js\3.0.0.0路径下。
在本地SDK\js\3.0.0.0\build-tools\ace-loader和SDK\ets\3.0.0.0\build-tools\ets-loader路径下分别执行:
npm install
这样,SDK就替换成功了。
备注:每次替换SDK都需要执行npm install。
3.应用源码下载
以settings源码为例
git clone https://gitee.com/openharmony/applications_settings.git
4.打开工程
第一次打开某个工程,可能工程内容刷新不全,重新打开即可。
备注:蓝区环境中,不要直接用Windows IDE打开wsl系统中的工程。
5.修改工程配置
每个工程可能有多个子模块,工程有一个公共的配置文件build.gradle,每个子模块也分别有一个单独的配置文件build.gradle。
可以看到,supportSystem当前是在公共配置文件中设置的,不要在子模块的配置文件中添加。
备注:每次修改完配置文件后,都要重新进行工程同步。
6.应用打包
工程同步完成后,可以进行应用打包,选择Build Hap(s)。到这里,已经能打包出未签名的hap包,生成目录在每个子模块的"build\outputs\hap\debug"目录下,如果有多个子模块,每个子模块的对应目录下都会有一个hap。
备注:每次重新打包,要先执行Clean Project。
7.应用签名
a.在主菜单栏点击Build > Generate Key and CSR
b.在系统环境变量中配置JDK的环境变量(不需要自己安装JDK,只需要使用DevEco Studio 3.0.0.600下的JDK工具)
c.本地OpenHarmony SDK目录SDK\toolchains\lib下执行
keytool -gencert -alias "OpenHarmony Application CA" -infile D:\key\keys.csr -outfile IDE.cer -keystore OpenHarmony.p12 -sigalg SHA384withECDSA -storepass 123456 -ext KeyUsage:"critical=digitalSignature" -validity 3650 -rfcjava -jar provisionsigtool.jar sign --in UnsgnedReleasedProfileTemplate.json --out myApplication_ohos_Provision.p7b --keystore OpenHarmony.p12 --storepass 123456 --alias "OpenHarmony Application Profile Release" --sigAlg SHA256withECDSA --cert OpenHarmonyProfileRelease.pem --validity 365 --developer-id ohosdeveloper --bundle-name ohos.samples.jshelloworld --distribution-certificate IDE.cer
其中,第一次命令的-infile为上面生成的本地.csr文件路径,第一条命令的-outfile文件对应第二条命令的–distribution-certificate文件。
d.* p12,*.csr, *.cer和 *.p7b这四个文件生成完之后,开始配置签名信息
以release版本为例,在File > Project Structure > Project > Signing Configs > Release窗口中,配置工程的签名信息。
配置之后点击apply,可以看到工程的配置文件中已经有了release版本的签名信息
用同样的方法可以配置debug版本的签名信息。到这里,就可以生成签名后的应用了。
IDE可以打包debug或release版本的应用,两个版本分别使用debug和release的签名配置。打包版本配置方法如下
备注:第一次通过IDE生成完签名信息后,以后都可以直接将上面的签名信息拷贝到build.gradle中,不需要再通过IDE生成。
8.确认Ark应用
生成的hap包可以通过修改后缀名为.zip打开,通过里面config.json文件判断是否是Ark应用,如果有virtualMachine字段,且其值包含ark字样,则为Ark应用。
当前IDE在ohos库版本配置为3.0.3.2之后,默认会编Ark应用,如果需要编quickjs应用,需要在每个子模块的配置文件中加入arkEnable字段。
rtualMachine字段,且其值包含ark字样,则为Ark应用。
当前IDE在ohos库版本配置为3.0.3.2之后,默认会编Ark应用,如果需要编quickjs应用,需要在每个子模块的配置文件中加入arkEnable字段。
OpenHarmony Windows环境IDE打包ARK应用教程相关推荐
- 本机php环境搭建教程:windows环境下wampserver的配置教程——超级详细
转载自:http://youchunyan5.blog.163.com/blog/static/5896062020123474456352/ 本机php环境搭建教程:windows环境下wampse ...
- windows环境下如何安装memcached教程
Memcached 是一个开源免费高性能的分布式内存对象缓存系统,能够加快网站访问速度和减轻数据库压力,本文向大家介绍下windows环境下如何安装memcached. 工具/原料 memcached ...
- 4.windows环境下如何安装memcached教程(转载+自己整理)
Memcached 是一个开源免费高性能的分布式内存对象缓存系统,能够加快网站访问速度和减轻数据库压力,本文向大家介绍下windows环境下如何安装memcached.百度经验:jingyan. ...
- Git安装【Windows环境安装配置】详细教程
Git 在本地的安装配置 实际项目开发中,我们经常会用一些版本控制器来托管自己的代码,今天就来总结下Git的相关用法,走教程. 目的:通过Git管理github托管项目代码 1. 下载安装Git Gi ...
- windows环境下VSCode配置C++教程(使用msvc编译器)
写在前面 VSCode是个优秀的.开源的.可扩展的代码编辑器,今天就来介绍一下在windows系统下如何用它来配置C++环境. 须知VSCode只是个编辑器,它自己是不带有编译.构建.调试等工具套件的 ...
- windows环境下wampserver的配置教程
对于初做PHP网站的朋友来说,第一步肯定是希望在自己电脑是搭建PHP环境,省去空间和上传的麻烦!但搭建环境也不是件容易的事情,特别是对于新手同学来说!因此在这里跟大家介绍我作为一名新手在使用的方便好用 ...
- Windows环境下smarty安装简明教程
整个配置过程分为九步走,文章看起来比较长,那是因为站长对每一个步骤都给出了没法再详细的解释,非常浅显,绝对是名副其实的"最简明教程".按照这个教程,智商大于零的用户都能顺利配置好S ...
- 一文实现:在python中调用matlab程序,保姆级安装windows环境下的matlab.engine教程
一.前言 我最近在做一个基于图像融合的目标检测工程,我经常用matlab去研究和创新新型的图像融合算法,因为matlab有着python所不可比拟的数据可视化功能和大量的滤波分解框架包:在目标检测 ...
- Jenkins+Maven+Git+Tomcat搭建持续集成环境,自动打包部署详细教程
服务器系统 centOS 8.2 1. 运行环境安装 1.1 安装 jdk 上传安装包,然后解压 [root@ianly ~]# tar -zxvf jdk-8u144-linux-x64.tar.g ...
最新文章
- 高效办公,如何利用Python自动发送邮件
- Linux进程间通信二 System V 消息队列简介与示例
- Ubuntu Linux配置Nginx+MySQL+PHP+phpMyAdmin详细步骤
- Secure CRT 自动记录日志和时间戳功能配置
- BZOJ3577 : 玩手机
- java调用命令行命令_Java命令行界面(第4部分):命令行
- IntelliJ IDEA自动生成自定义的类注释和方法注释
- python创建虚拟环境命令_python 创建虚拟环境
- 闭包造成的内存泄露怎么解决?
- eclipse中误删除的java文件 代码如何恢复
- 淘宝API 搜索相似的商品
- 目标追踪(一)环境搭建
- 【论文模型讲解】Vision Transformer
- 数学竞赛书单该怎么选?金牌牛娃用的书都在这里了!
- 登顶多国免费榜,Zynga能否依靠超休闲游戏重回巨头行列
- 知道创宇优质混合云解决方案,点击了解~
- 【CodeForces300D】Painting Square
- 锐安信sslTrus 5年期证书订阅套餐 简化SSL证书管理
- 基于单片机干湿垃圾自动分类系统-毕设课设资料
- 构建AWS Site-to-Site IPsec实现内网互联