精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

OpenHarmony開發實例:【配置應用簽名信息】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-04-22 16:52 ? 次閱讀

使用真機設備運行和調試OpenHarmony應用前,需要對應用進行簽名才能正常運行。該指導用于OpenHarmony應用的簽名配置。配置應用簽名信息的流程如下圖所示。

zh-cn_image_0000001113808114

生成密鑰和證書請求文件

OpenHarmony應用通過數字證書(.cer文件)和Profile文件(.p7b文件)來保證應用的完整性,需要通過DevEco Studio來生成密鑰文件(.p12文件)和證書請求文件(.csr文件)。同時,也可以使用命令行工具的方式來生成密鑰文件和證書請求文件。

使用DevEco Studio生成密鑰和證書請求文件

  1. 在主菜單欄點擊Build > Generate Keyand CSR

    說明

    如果本地已有對應的密鑰,無需新生成密鑰,可以在Generate Key界面中點擊下方的Skip跳過密鑰生成過程,直接使用已有密鑰生成證書請求文件。

  2. Key Store File中,可以點擊Choose Existing選擇已有的密鑰庫文件(存儲有密鑰的.p12文件);如果沒有密鑰庫文件,點擊New進行創建。下面以新創建密鑰庫文件為例進行說明。
    img

  3. Create Key Store窗口中,填寫密鑰庫信息后,點擊 OK

    • Key Store File :選擇密鑰庫文件存儲路徑。
    • Password :設置密鑰庫密碼,必須由大寫字母、小寫字母、數字和特殊符號中的兩種以上字符的組合,長度至少為8位。請記住該密碼,后續簽名配置需要使用。
    • Confirm Password :再次輸入密鑰庫密碼。

    img

  4. Generate Key界面中,繼續填寫密鑰信息后,點擊 Next

    • Alias :密鑰的別名信息,用于標識密鑰名稱。請記住該別名,后續簽名配置需要使用。
    • Password :密鑰對應的密碼,與密鑰庫密碼保持一致,無需手動輸入。
    • Validity :證書有效期,建議設置為25年及以上,覆蓋應用的完整生命周期。
    • Certificate :輸入證書基本信息,如組織、城市或地區、國家碼等。

    img

  5. Generate CSR界面,選擇密鑰和設置CSR文件存儲路徑。
    img

  6. 點擊OK按鈕,創建CSR文件成功,可以在存儲路徑下獲取生成的密鑰庫文件(.p12)和證書請求文件(.csr)。
    img

使用命令行工具生成證書請求文件

使用Open JDK攜帶的Keytool工具生成證書請求文件。

  1. 使用管理員身份運行命令行工具。
    img

  2. 切換到keytool工具所在路徑,實際路徑請根據DevEco Studio安裝目錄進行修改。
    img[]()

  3. 執行如下命令,生成公私鑰文件。例如,生成的密鑰庫名稱為ide_demo_app.p12,以存儲到D盤根目錄下為例

    keytool -genkeypair -alias "ide_demo_app" -keyalg EC -sigalg SHA256withECDSA -dname "C=CN,O=HUAWEI,OU=HUAWEI IDE,CN=ide_demo_app"  -keystore d:idedemokey.p12 -storetype pkcs12 -validity 9125 -storepass 123456Abc -keypass 123456Abc
    

    生成公私鑰文件的參數說明如下:

    說明

    請記錄下alias、storepass和keypass的值,在后續[配置簽名信息]操作會使用到。

    • alias :密鑰的別名信息,用于標識密鑰名稱。
    • sigalg :簽名算法,固定為 SHA256withECDSA
    • dname :按照操作界面提示進行輸入。
      • C:國家/地區代碼,如CN。
      • O:組織名稱,如HUAWEI。
      • OU:組織單位名稱,如HUAWEI IDE。
      • CN:名字與姓氏,建議與別名一致。
    • validity :證書有效期,建議設置為9125(25年)。
    • storepass :設置密鑰庫密碼,必須由大寫字母、小寫字母、數字和特殊符號中的兩種以上字符的組合,長度至少為8位。請記住該密碼,后續簽名配置需要使用。
    • keypass :設置密鑰的密碼,請與storepass保持一致。
  4. 執行如下命令,執行后需要輸入storepass密碼,生成證書請求文件,后綴格式為.csr。

    keytool -certreq -alias "ide_demo_app" -keystore d:idedemokey.p12 -storetype pkcs12 -file d:idedemokey.csr
    

    生成證書請求文件的參數說明如下:

    • alias :與[3]中輸入的alias保持一致。
    • file :生成的證書請求文件名稱,后綴為.csr。

生成應用證書文件

使用[生成密鑰和證書請求文件]中生成的證書請求文件,來生成應用簽名所需的數字證書文件。生成方法如下:

進入DevEco Studio安裝目錄的 Sdktoolchainslib文件夾下(該SDK目錄只能是OpenHarmony SDK,配置方法可參考[配置OpenHarmony SDK]),打開命令行工具,執行如下命令(如果keytool命令不能執行,請在系統環境變量中添加JDK的環境變量)。其中,只需要修改輸入和輸出即可快速生成證書文件,即修改 -infile指定證書請求文件csr文件路徑, -outfile指定輸出證書文件名及路徑。

keytool -gencert -alias "OpenHarmony Application CA" -infile myApplication_ohos.csr -outfile myApplication_ohos.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文件并不是[生成密鑰和證書請求文件]中生成的.p12文件。
  • sigalg :證書簽名算法,該參數不能修改。
  • storepass :密鑰庫密碼,密碼為123456,該參數不能修改。
  • ext :證書擴展項,該參數不能修改。
  • validity :證書有效期,自定義天數。
  • rfc :輸出文件格式指定,該參數不能修改。

生成應用Profile文件

鴻蒙開發指導文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

搜狗高速瀏覽器截圖20240326151450.png

Profile文件包含OpenHarmony應用的包名、數字證書信息、描述應用允許申請的證書權限列表,以及允許應用調試的設備列表(如果應用類型為Release類型,則設備列表為空)等內容,每個應用包中均必須包含一個Profile文件。

進入 Sdktoolchainslib目錄下,打開命令行工具,執行如下命令。

java -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 包名 --permission 受限權限名(可選) --permission 受限權限名(可選) --distribution-certificate myApplication_ohos.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 :[生成應用證書文件]中生成的證書文件。

配置應用簽名信息

在真機設備上調試前,需要使用到制作的私鑰(.p12)文件、證書(.cer)文件和Profile(.p7b)文件對調試的模塊進行簽名。

打開 File > Project Structure ,點擊 Project > Signing Configs > debug窗口中,去除勾選“Automatically generate signing”,然后配置指定模塊的調試簽名信息。

  • Store File :選擇密鑰庫文件,文件后綴為.p12,該文件為[生成密鑰和證書請求文件]中生成的.p12文件。
  • Store Password :輸入密鑰庫密碼,該密碼為[生成密鑰和證書請求文件]中填寫的密鑰庫密碼保持一致。
  • Key Alias :輸入密鑰的別名信息,與[生成密鑰和證書請求文件]中填寫的別名保持一致。
  • Key Password :輸入密鑰的密碼,與 Store Password保持一致。
  • Sign Alg :簽名算法,固定為SHA256withECDSA。
  • Profile File :選擇[生成應用Profile文件]中生成的Profile文件,文件后綴為.p7b。
  • Certpath File :選擇[生成應用證書文件]中生成的數字證書文件,文件后綴為.cer。

zh-cn_image_0000001155643492

設置完簽名信息后,點擊 OK進行保存,然后可以在工程下的build.gradle中查看簽名的配置信息。

zh-cn_image_0000001202722349

默認情況下,DevEco Studio編譯hap包的類型為debug類型,如果需要編譯release類型的hap包,請打開工程左下角的OhosBuild Variants,設置模塊的編譯構建類型為release。

zh-cn_image_0000001115066116

編譯完成后,OpenHarmony應用的Hap包可以從工程的bulid目錄下獲取。

zh-cn_image_0000001163918627

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 鴻蒙
    +關注

    關注

    57

    文章

    2310

    瀏覽量

    42744
  • HarmonyOS
    +關注

    關注

    79

    文章

    1967

    瀏覽量

    30021
  • OpenHarmony
    +關注

    關注

    25

    文章

    3660

    瀏覽量

    16158
收藏 人收藏

    評論

    相關推薦

    【「OpenHarmony開發與實踐 | 基于紅莓RK2206開發板」閱讀體驗】+初體驗1

    愛好者沒有bug,「OpenHarmony開發與實踐 | 基于紅莓RK2206開發板」大賣吧!哦對了 你們的開發板是怎么準備的呢?【小凌派RK2206
    發表于 09-18 18:30

    基于ArkTS語言的OpenHarmony APP應用開發:HelloOpenharmony

    1、程序簡介該程序是基于OpenHarmony標準系統編寫的UI應用類:HelloOpenHarmony。本案例是基于API9接口開發。本案例已在OpenHarmony凌蒙派-RK35
    的頭像 發表于 09-15 08:09 ?308次閱讀
    基于ArkTS語言的<b class='flag-5'>OpenHarmony</b> APP應用<b class='flag-5'>開發</b>:Hello<b class='flag-5'>Openharmony</b>

    OpenHarmony 明星開發板和應用招募啟動,等你來!

    為助力企業和開發者快速找到好用的開發板和應用,推動OpenHarmony生態發展,現啟動 “OpenHarmony 明星開發板和應用招募”評
    發表于 09-14 15:21

    鴻蒙OpenHarmony南向/北向快速開發教程-迅為RK3568開發

    應用開發的區別 P7_迅為OpenHarmony學習開發視頻簡介 P8_燒寫OpenHarmony固件 P9_安裝并配置DevEco-Stu
    發表于 07-23 10:44

    拓維信息旗下開鴻智谷精彩亮相OpenHarmony開發者大會2024

    5月25日,以“鴻心聚力智引未來”為主題的OpenHarmony開發者大會2024(以下簡稱“大會”)在深圳成功舉辦。大會以OpenHarmony4.1Release版本根技術特性解讀為契機,聚焦
    的頭像 發表于 05-31 08:14 ?458次閱讀
    拓維<b class='flag-5'>信息</b>旗下開鴻智谷精彩亮相<b class='flag-5'>OpenHarmony</b><b class='flag-5'>開發</b>者大會2024

    OpenHarmony開發實例:【電話簿聯系人Contacts】

    Contacts應用是基于OpenHarmony SDK開發的安裝在潤和HiSpark Taurus AI Camera(Hi3516d)開發板標準系統上的應用;應用主要功能是展示聯系人列表,并點擊某一列彈出聯系人詳細
    的頭像 發表于 04-23 09:44 ?722次閱讀
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>開發</b><b class='flag-5'>實例</b>:【電話簿聯系人Contacts】

    OpenHarmony開發實例:【 待辦事項TodoList】

    TodoList應用是基于OpenHarmony SDK開發的安裝在潤和HiSpark Taurus AI Camera(Hi3516d)開發板標準系統上的應用;應用主要功能是以列表的形式,展示需要完成的日程;通過本demo可以
    的頭像 發表于 04-22 22:00 ?674次閱讀
    <b class='flag-5'>OpenHarmony</b><b class='flag-5'>開發</b><b class='flag-5'>實例</b>:【 待辦事項TodoList】

    鴻蒙開發實例:【配置OpenHarmony SDK】

    在設置OpenHarmony應用開發環境時,需要開發者在DevEco Studio中配置對應的SDK信息
    的頭像 發表于 04-22 15:24 ?1776次閱讀
    鴻蒙<b class='flag-5'>開發</b><b class='flag-5'>實例</b>:【<b class='flag-5'>配置</b><b class='flag-5'>OpenHarmony</b> SDK】

    鴻蒙OS開發指導:【應用包簽名工具】

    OpenHarmony系統內置密鑰庫文件,文件名稱為OpenHarmony.p12,內含根CA證書、中間CA證書、最終實體證書等信息,工具基于該密鑰庫文件對OpenHarmony應用進
    的頭像 發表于 04-17 11:13 ?988次閱讀
    鴻蒙OS<b class='flag-5'>開發</b>指導:【應用包<b class='flag-5'>簽名</b>工具】

    OpenHarmony南向開發實例:【游戲手柄】

    基于TS擴展的聲明式開發范式編程語言,以及OpenHarmony的分布式能力實現的一個手柄游戲。
    的頭像 發表于 04-17 10:21 ?718次閱讀
    <b class='flag-5'>OpenHarmony</b>南向<b class='flag-5'>開發</b><b class='flag-5'>實例</b>:【游戲手柄】

    企業鴻蒙原生應用元服務備案實操包名公鑰簽名信息

    信息? (1)登錄 AppGallery Connect ,點擊“用戶與訪問”,在頁面左側點擊“證書管理”,下載需要備案的鴻蒙應用/元服務開發者證書; (2)使用文本編輯器(如,記事本)打開已下載的證書
    發表于 04-10 15:32

    鴻蒙ArkTS開始實例:【canvas實現簽名板功能】

    使用ArkTS中的canvas實現簽名板的功能,canvas畫布大家都很熟悉,我們會用它經常實現一些畫板或者圖表、表格之類的功能。canvas簽名板是我在開發APP過程中實現的一個功能,開發
    的頭像 發表于 04-08 10:10 ?886次閱讀
    鴻蒙ArkTS開始<b class='flag-5'>實例</b>:【canvas實現<b class='flag-5'>簽名</b>板功能】

    鴻蒙開發學習:【OpenHarmony HAR】

    OpenHarmony js/ts三方庫使用的是OpenHarmony靜態共享包,即HAR(Harmony Archive),可以包含js/ts代碼、c++庫、資源和配置文件。通過HAR,可以實現
    的頭像 發表于 03-18 16:27 ?699次閱讀

    鴻蒙開發實戰項目:錄音變聲應用

    概述 本示例使用AudioCapturer提供的JS接口對音頻進行采集,并進行變聲處理。 涉及OpenHarmony技術特性 媒體 基礎信息 應用端 簡介 AudioChangeDemo是裝在
    發表于 03-01 17:24

    openharmony開發應用

    隨著智能設備的普及和多樣化,開發者們對于更加靈活、高效的操作系統需求與日俱增。在這個背景下,華為推出了OpenHarmony,一個全場景智能終端操作系統和生態平臺。本文將詳細探討
    的頭像 發表于 12-19 09:42 ?642次閱讀