背景
OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)應用如果需要對外發(fā)布就必須要通過應用簽名,DevEco Studio已提供自動簽名功能加速應用開發(fā),但自動簽名僅限于debug開發(fā),如需對外發(fā)布則必須完成release簽名。在OpenHarmony中有AGC應用商店可以幫助開發(fā)者完成release簽名,本文將介紹OpenHarmony應用簽名方法的步驟,將使用OpenHarmony官方提供的簽名工具對HAP進行簽名。
使用DevEco Studio完成HAP自動簽名
打開DevEco Studio工具,點擊右上角Project Structure進入工程配置頁面
點擊Project -> Signing Configs,勾選Automatically generate signing,點擊OK
點擊Build -> Rebuild Project 或 Build HAP都可以編譯構(gòu)建HAP包
編輯構(gòu)建完成后我們可以得到未簽名的HAP包
這個包可以用于Debug調(diào)試,但不能用于Release正式發(fā)布
IDE對HAP包簽名的密碼限制
從理論上講,我們也可以通過DevEco Studio進行HAP包的發(fā)布簽名,但是官方提供的OpenHarmony.p12文件密碼為123456
而IDE不支持使用123456這樣的簡單的密碼,它達不到密碼安全級別
因此,使用官方加密文件完成簽名暫時行不通
我們改變思路,使用命令行方式完成簽名,這樣可以繞過IDE的限制
使用官方開源簽名工具完成簽名
查閱官方資料發(fā)現(xiàn),官方已經(jīng)提供了命令行簽名工具
https://gitee.com/openharmony/developtools_hapsigner
我們通過修改配置文件、執(zhí)行腳本,即可完成HAP簽名具體步驟如下:
1 安裝工具依賴環(huán)境
安裝python3.10(下載鏈接:https://www.python.org/downloads/),通過命令行驗證安裝是否成功
安裝jdk,配置好環(huán)境變量,通過命令行驗證安裝是否成功
2 將簽名工具代碼拉取到本地保存,修改配置文件
git clone https://gitee.com/openharmony/developtools_HAPsigner.git
修改developtools_HAPsignerautosignsignHAP.config文件配置
# config.signtool改為HAP-sign-tool.jar的絕對路徑,可以在dist目錄中找到
config.signtool=E:/openharmony/developtools_HAPsigner/dist/HAP-sign-tool.jar
# common.keystoreFile改為OpenHarmony.p12的絕對路徑,可以在dist目錄中找到
common.keystoreFile=E:/openharmony/developtools_HAPsigner/dist/OpenHarmony.p12
# app.keypair.keyAlias改為OpenHarmony Application Release
app.keypair.keyAlias=OpenHarmony Application Release
# cert.app.outFile改為OpenHarmonyApplication.pem的絕對路徑,可以在dist目錄中找到
cert.app.outFile=E:/openharmony/developtools_HAPsigner/dist/OpenHarmonyApplication.pem
# sign.profile.outFile改為官方提供的p7b絕對路徑,比如launcher代碼中提供了launcher.p7b加密文件
sign.profile.outFile=E:/openharmony/signfiles/launcher/launcher.p7b
# sign.app.inFile為未簽名HAP路徑
sign.app.inFile=E:/openharmony/applications_launcher/product/phone/build/default/outputs/default/phone-launcher-default-unsigned.HAP
# sign.app.outFile為簽名后的HAP保存路徑
sign.app.outFile=E:/openharmony/applications_launcher/product/phone/build/default/outputs/default/phone-launcher-signed.HAP
3 完成配置文件修改后,執(zhí)行簽名腳本
# 進入簽名工具autosign目錄
cd E:openharmonydeveloptools_HAPsignerautosign
# 執(zhí)行python腳本
python .autosign.py signHAP
簽名成功后顯示Success
到指定目錄下可以找到簽名后的HAP
總結(jié)
DevEco Studio開發(fā)工具為開發(fā)人員提供了非常友好的HAP自動簽名功能及非常便捷的Debug包。由于IDE的安全密碼要求,對于Release包的發(fā)布我們暫時需要手動簽名,尤其是系統(tǒng)級的應用。我們可以利用官方提供的簽名工具較為容易地完成release包簽名,后續(xù)可以自行開發(fā)GUI工具進一步提升簽名效率。
審核編輯:湯梓紅
-
OpenHarmony
+關注
關注
25文章
3722瀏覽量
16313 -
DevEco Studio
+關注
關注
0文章
21瀏覽量
1088
原文標題:OpenHarmony應用HAP包簽名
文章出處:【微信號:gh_e4f28cfa3159,微信公眾號:OpenAtom OpenHarmony】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論