
陳誠
鴻湖萬聯高級技術專家、產品推薦官
以下內容來自嘉賓分享,不代表開放原子開源基金會觀點
背景
OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)應用如果需要對外發布就必須要通過應用簽名,DevEco Studio已提供自動簽名功能加速應用開發,但自動簽名僅限于debug開發,如需對外發布則必須完成release簽名。 在OpenHarmony中有AGC應用商店可以幫助開發者完成release簽名,本文將介紹OpenHarmony應用簽名方法的步驟,將使用OpenHarmony官方提供的簽名工具對HAP進行簽名。使用DevEco Studio完成HAP自動簽名
打開DevEco Studio工具,點擊右上角Project Structure進入工程配置頁面

點擊Project -> Signing Configs,勾選Automatically generate signing,點擊OK

點擊Build -> Rebuild Project 或 Build HAP都可以編譯構建HAP包

編輯構建完成后我們可以得到未簽名的HAP包

這個包可以用于Debug調試,但不能用于Release正式發布
IDE對HAP包簽名的密碼限制
從理論上講,我們也可以通過DevEco Studio進行HAP包的發布簽名,但是官方提供的OpenHarmony.p12文件密碼為123456而IDE不支持使用123456這樣的簡單的密碼,它達不到密碼安全級別


因此,使用官方加密文件完成簽名暫時行不通
我們改變思路,使用命令行方式完成簽名,這樣可以繞過IDE的限制
使用官方開源簽名工具完成簽名
查閱官方資料發現,官方已經提供了命令行簽名工具https://gitee.com/openharmony/developtools_hapsigner
我們通過修改配置文件、執行腳本,即可完成HAP簽名具體步驟如下:1 安裝工具依賴環境
安裝python3.10(下載鏈接:https://www.python.org/downloads/),通過命令行驗證安裝是否成功
?安裝jdk,配置好環境變量,通過命令行驗證安裝是否成功
?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 Releaseapp.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 完成配置文件修改后,執行簽名腳本
# 進入簽名工具autosign目錄cd E:openharmonydeveloptools_HAPsignerautosign# 執行python腳本python .autosign.py signHAP
簽名成功后顯示Success
?到指定目錄下可以找到簽名后的HAP
?總結
DevEco Studio開發工具為開發人員提供了非常友好的HAP自動簽名功能及非常便捷的Debug包。由于IDE的安全密碼要求,對于Release包的發布我們暫時需要手動簽名,尤其是系統級的應用。我們可以利用官方提供的簽名工具較為容易地完成release包簽名,后續可以自行開發GUI工具進一步提升簽名效率。
更多熱點文章閱讀
- 鴻湖萬聯產品推薦官招募!啟鴻OpenHarmony開發板免費體驗
- 國產龍芯 LoongArch 平臺已初步支持OpenHarmony操作系統
- 開鴻智谷 NiobeU4 開發板 LCD 顯示字符數字測試
- 龍芯+OpenHarmony,“純國產”自主生態愈發強大
- 萬里紅發布搭載OpenHarmony操作系統的平板電腦SP10
END
想了解更多開源技術?后臺留言,立刻安排!就喜歡獎勵一個“”和“在看”唄~
原文標題:技術專家分享:OpenHarmony應用HAP包簽名
文章出處:【微信公眾號:電子發燒友開源社區】歡迎添加關注!文章轉載請注明出處。
-
OpenHarmony
+關注
關注
33文章
3952瀏覽量
21099
原文標題:技術專家分享:OpenHarmony應用HAP包簽名
文章出處:【微信號:HarmonyOS_Community,微信公眾號:電子發燒友開源社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
基于凌羽派的OpenHarmony北向應用開發:Hello World 示例應用
OpenHarmony TSC 2025年度技術課題發布(截至10月)
【匯思博SEEK100開發板試用體驗】3/第一次使用OpenHarmony
OpenHarmony 2025年度技術課題發布
【「DeepSeek 核心技術揭秘」閱讀體驗】+混合專家
OpenHarmony年度技術課題評選通知
迅為RK3568開發板基本工程目錄-OpenHarmony APP工程結構
鴻蒙5開發寶藏案例分享---優化應用包體積大小問題
HarmonyOS優化應用包體積大小問題性能優化
如何使用 DveEco Studio ?
城市技術論壇首次登陸歐洲!OpenHarmony啟航海外開源生態新征程
技術專家分享:OpenHarmony應用HAP包簽名
評論