精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

OpenHarmony應用編譯 - 如何在源碼中編譯復雜應用(3.2-Release)

系統 OpenHarmony
本文檔以系統應用Launcher為例,帶大家了解如何通過系統源碼編譯應用的方式來打包預安裝應用。

想了解更多關于開源的內容,請訪問:

51CTO 開源基礎軟件社區

https://ost.51cto.com

概述

文檔環境

  • 開發環境:Windows 11
  • 編譯環境:Ubuntu 22.04
  • 開發板型號:DAYU 200(RK3568)
  • 系統版本:OpenHarmony-3.2-Release
  • 涉及倉庫:applications_launcher

功能簡介

  • 在OpenHarmony系統中預安裝應用的hap包會隨系統編譯打包到鏡像中,目前有兩種編譯預安裝應用hap包的方式,一種為隨系統編譯時,編譯應用源碼生成hap包的方式,另一種是將已生成的hap包放入系統源碼中,再進行打包的方式。后者需要開發者使用DevEco Studio或其它途徑,把應用源碼編譯構建為hap包,再將hap放入系統源碼中。
  • 本文檔以系統應用Launcher為例,帶大家了解如何通過系統源碼編譯應用的方式來打包預安裝應用。

3.2-Release系統編譯Launcher

 刪除或注釋系統中默認的Launcher應用hap包編譯方式。

文件位置:applications/standard/hap/BUILD.gn 

group("hap") {
  deps = [
    	...
      # "http://applications/standard/hap:launcher_hap", // 直接刪除或注釋,不參與編譯
      # "http://applications/standard/hap:launcher_settings_hap",  // 直接刪除或注釋,不參與編譯
    	...
  ]
 }

在applications/standard/launcher/product/phone目錄中增加BUILD.gn文件。

內容如下:

import("http://build/ohos.gni")

ohos_hap("launcher_hap") {
  hap_profile = "src/main/module.json"
  deps = [
    ":launcher_js_assets",
    ":launcher_resources",
  ]
  certificate_profile = "../../signature/launcher.p7b"
  hap_name = "Launcher_OS"
  part_name = "prebuilt_hap"
  subsystem_name = "applications"
  js_build_mode = "release"
  module_install_dir = "app/com.ohos.launcher"
}

ohos_js_assets("launcher_js_assets") {
  ets2abc = true
  source_dir = "src/main/ets"
}

ohos_resources("launcher_resources") {
  sources = [ "src/main/resources", "../../common/src/main/resources" ]
  deps = [ ":launcher_app_profile" ]
  hap_profile = "src/main/module.json"
}

ohos_app_scope("launcher_app_profile") {
  app_profile = "../../AppScope/app.json"
  sources = [ "../../AppScope/resources" ]
}

說明:

  • 此處把產物名稱hap_name定義為Launcher_OS是為了區分原系統源碼中默認的hap包名稱,實際可以填寫為Launcher。
  • 因為launcher_hap中使用了其它har(common)中的資源,所以launcher_resources中的sources需要添加依賴的resources資源目錄,在步驟3中launcher_settings_hap
    中的配置也是如此。

在applications/standard/launcher/feature/settings目錄中增加BUILD.gn文件。

內容如下:

import("http://build/ohos.gni")

ohos_hap("launcher_settings_hap") {
  hap_profile = "src/main/module.json"
  deps = [
    ":launcher_settings_js_assets",
    ":launcher_settings_resources",
  ]
  certificate_profile = "../../signature/launcher.p7b"
  hap_name = "Launcher_Settings_OS"
  part_name = "prebuilt_hap"
  subsystem_name = "applications"
  js_build_mode = "release"
  module_install_dir = "app/com.ohos.launcher"
}

ohos_js_assets("launcher_settings_js_assets") {
  ets2abc = true
  source_dir = "src/main/ets"
}

ohos_resources("launcher_settings_resources") {
  sources = [ "src/main/resources", "../../common/src/main/resources" ]
  deps = [ ":launcher_settings_app_profile" ]
  hap_profile = "src/main/module.json"
}

ohos_app_scope("launcher_settings_app_profile") {
  app_profile = "../../AppScope/app.json"
  sources = [ "../../AppScope/resources" ]
}

說明:

  • 此處把產物名稱hap_name定義為Launcher_Settings_OS是為了區分原系統源碼中默認的hap包名稱,實際可以填寫為Launcher_Settings

因為系統編譯只可讀取json后綴的配置文件,所以需要把應用源碼中的app.json5和module.json5文件復制,并改名為app.json和module.json文件。

復制applications/standard/launcher/AppScope/app.json5文件為app.json。

復制applications/standard/launcher/product/phone/src/main/module.json5文件為module.json。

復制applications/standard/launcher/feature/settings/src/main/module.json5文件為module.json。

在applications/standard/hap/ohos.build文件module_list中增加launcher_hap模塊和launcher_settings_hap模塊編譯。

{
  "subsystem": "applications",
  "parts": {
    "prebuilt_hap": {
	  	...
      "module_list": [
       	...
        "http://applications/standard/launcher/product/phone:launcher_hap",
        "http://applications/standard/launcher/feature/settings:launcher_settings_hap",
        ...
      ]
    }
  }
}

修改預編譯配置build/prebuilts_download_config.json文件,把launcher依賴增加到npm_install_path列表中。

{
  "prebuilts_download_dir": "../OpenHarmony_canary_prebuilts",
  "npm_install_path": [
    "developtools/ace_ets2bundle/compiler",
    "developtools/ace_js2bundle/ace-loader",
    "third_party/jsframework",
    "arkcompiler/ets_frontend/ts2panda",
    "arkcompiler/ets_frontend/legacy_bin/api8",
    "interface/sdk-js/build-tools",
    "applications/standard/launcher/common",
    "applications/standard/launcher/feature/appcenter",
    "applications/standard/launcher/feature/bigfolder",
    "applications/standard/launcher/feature/form",
    "applications/standard/launcher/feature/gesturenavigation",
    "applications/standard/launcher/feature/numbadge",
    "applications/standard/launcher/feature/pagedesktop",
    "applications/standard/launcher/feature/recents",
    "applications/standard/launcher/feature/smartdock",
    "applications/standard/launcher/feature/settings",
    "applications/standard/launcher/product/phone"
  ],
  ...
}

執行預編譯指令。

bash build/prebuilts_download.sh --skip-ssl

可以在應用源碼中看到應用內的依賴已經被正確的加載。

執行源碼編譯指令。如果以下2個目錄產物正確,則說明應用源碼編譯方式修改成功。

在out/rk3568/obj/applications/standard/launcher目錄中,會生成2個hap的編譯產物。

在out/rk3568/packages/phone/system/app/com.ohos.launcher目錄中,是實際系統環境中的hap包產物。

燒錄系統驗證功能。

Launcher正常啟動:

系統應用目錄文件正確:

想了解更多關于開源的內容,請訪問:

51CTO 開源基礎軟件社區

https://ost.51cto.com

責任編輯:jianghua 來源: 51CTO 開源基礎軟件社區
相關推薦

2023-12-11 17:30:52

預安裝應用鴻蒙Launcher

2022-05-27 15:04:53

鴻蒙操作系統

2022-04-25 09:10:50

RK3568鴻蒙

2022-06-02 09:14:14

GNOME源碼編譯Linux 發行版

2022-02-21 14:49:26

OpenHarmon操作系統鴻蒙

2023-10-08 15:23:09

側獲取屏幕DPI鴻蒙

2023-07-27 14:38:33

開源鴻蒙

2022-04-29 14:56:40

通話應用源碼剖析

2025-05-14 08:00:00

Android應用簽名編譯系統

2023-02-09 15:28:19

鴻蒙編譯速度

2023-06-26 16:13:43

馬達驅動模型鴻蒙

2023-05-31 15:45:49

HCS鴻蒙

2009-12-16 11:54:35

WindowsLinuxUnix

2024-07-26 16:39:33

鴻蒙系統開源構建系統

2009-11-25 10:14:15

memcachedb編譯安裝

2011-03-14 13:51:00

iptables編譯

2022-04-18 10:37:01

鴻蒙操作系統開發工具

2010-04-12 11:19:47

編譯內核模塊

2009-06-02 10:02:50

eclipse jboeclipse jbojboss for e

2021-07-02 20:37:19

Python代碼SRP
點贊
收藏

51CTO技術棧公眾號

欧美国产精品一区| 国产精品一区毛片| 日韩一级欧美一级| 福利视频一区二区三区四区| 亚洲欧洲成人在线| 美女网站一区二区| 久久久久国产视频| 无码熟妇人妻av| 97精品资源在线观看| 午夜国产精品影院在线观看| 色狠狠久久av五月综合| www.好吊色| 日韩av高清在线观看| 欧美高清自拍一区| 亚洲精品成人av久久| 91成人入口| 欧美在线一二三| 人人妻人人澡人人爽欧美一区双 | 国产精品中出一区二区三区| 欧美国产成人精品一区二区三区| 亚欧美无遮挡hd高清在线视频| 欧美精品一区二区蜜臀亚洲| 小泽玛利亚视频在线观看| 国产天堂在线播放视频| 日本一区二区三区在线不卡| 国产在线精品一区二区三区》| 中文字幕有码无码人妻av蜜桃| 亚洲精品乱码久久久久久蜜桃麻豆| 中文字幕精品av| 免费看黄色aaaaaa 片| 一区二区在线免费播放| 欧美精品粉嫩高潮一区二区| 男人亚洲天堂网| 岛国毛片av在线| 亚洲精品国产一区二区精华液| 麻豆传媒一区二区| 三级网站免费观看| 国产一区二区h| 国产精品美女免费| 成人h动漫精品一区二区下载| 伊人天天综合| 欧美日韩国产二区| 欧美日韩精品在线观看视频| 欧美电影《轻佻寡妇》| 亚洲人成网在线播放| 成人免费无码大片a毛片| 91成人入口| 日韩精品一区二区三区中文精品| 久久6免费视频| 精品裸体bbb| 欧美午夜精品久久久| 日本成人黄色网| 高清电影一区| 欧美在线免费观看视频| 在线免费观看av的网站| 欧美色999| 欧美日韩三级视频| 久久人人爽av| 亚洲色图综合| 日韩一级高清毛片| 国产人妻精品午夜福利免费| 91精品啪在线观看国产爱臀 | 欧美日韩精品二区| 成人免费播放器| 678在线观看视频| 午夜精品成人在线| 国产精品久久久久9999小说| 成人精品国产亚洲| 欧美一a一片一级一片| 91极品视频在线观看| 日韩漫画puputoon| 欧美日韩另类国产亚洲欧美一级| 天堂av2020| 日韩欧洲国产| 日韩av影视在线| 欧美大波大乳巨大乳| 久久一级电影| 欧美精品激情视频| 日韩免费视频网站| 久久国产欧美| 91久热免费在线视频| 国产xxxx在线观看| 99在线精品观看| 日韩欧美一区二区在线观看 | 午夜视频免费看| 久久精品欧美一区二区三区不卡| 亚洲国产精品久久久久婷婷老年| 黄色免费在线观看网站| 亚洲大尺度视频在线观看| 国产欧美在线一区| 99久久久国产| 亚洲国产美女精品久久久久∴| 国产精品无码午夜福利| 国产精品久久久久久麻豆一区软件| 欧美丰满少妇xxxxx做受| 国产午夜在线播放| 激情综合亚洲精品| 久久精品日产第一区二区三区精品版| 国产98在线| 亚洲一级片在线观看| 97xxxxx| 91精品国产一区二区在线观看 | 亚洲成人av免费在线观看| 国产亚洲电影| 高清欧美性猛交xxxx| 中文无码精品一区二区三区| 国产激情一区二区三区| 欧美一区二区三区四区五区六区| 黄色网页在线看| 在线一区二区三区| zjzjzjzjzj亚洲女人| 日韩av密桃| 高清欧美电影在线| 99国产精品99| 国产欧美精品一区二区三区四区 | 青青操视频在线播放| 久久精品国语| 99re在线视频上| 永久免费在线观看视频| 色综合久久久久网| 国产女人18毛片水真多18| 婷婷六月综合| 国产精品啪视频| 香蕉视频国产在线| 日韩毛片在线免费观看| 三年中国国语在线播放免费| 欧美电影在线观看免费| 欧美国产视频日韩| 国产精品一区二区免费视频| 久久久国产精品不卡| 欧美日韩精品在线一区二区| 一区二区网站| 欧美日韩国产123| 国产三级第一页| 国产精品美女久久久久久久久久久 | 香蕉久久aⅴ一区二区三区| 在线精品视频免费观看| a毛片毛片av永久免费| 在线日韩视频| 高清视频一区| 黄网站在线观| 精品少妇一区二区三区| 激情综合网五月天| 国产中文字幕一区| 综合一区中文字幕| 人人精品久久| 久久久国产精品一区| 国产伦理吴梦梦伦理| 国产精品毛片高清在线完整版| 99久久久无码国产精品6| 神马久久av| 热99精品只有里视频精品| 日本黄色三级视频| 精品久久久久久国产| 精品国产人妻一区二区三区| 日韩一级大片| 鲁片一区二区三区| 久久sese| 中文字幕在线看视频国产欧美| 91丨九色丨海角社区| 久久久美女毛片| 另类小说第一页| 成人免费看片39| 国产精品专区第二| 麻豆传媒视频在线| 日韩欧美综合一区| 国产成人精品一区二三区| 久久婷婷色综合| 亚洲精品高清无码视频| 色综合咪咪久久网| 亚洲综合小说区| av电影在线免费| 亚洲欧美综合图区| 中文字幕无码乱码人妻日韩精品| 国产精品成人网| 俄罗斯女人裸体性做爰| 在线亚洲激情| 亚洲一二三区精品| 视频免费一区二区| 97久久精品人人澡人人爽缅北| 免费播放片a高清在线观看| 欧美日韩久久不卡| 久久久久久久久久久久久久久久久 | 一本一道波多野毛片中文在线| 欧美精品日韩一本| 久久精品国产亚洲AV无码男同| 久久伊人蜜桃av一区二区| 色一情一区二区| 国产精品地址| 婷婷精品国产一区二区三区日韩| 精品国模一区二区三区欧美 | 亚洲欧美制服第一页| 中文字幕在线观看免费| 亚洲综合丝袜美腿| 精品无码在线观看| 国产不卡高清在线观看视频| 日本成人中文字幕在线| 国内精品福利| 亚洲欧美在线网| 久久365资源| 国产精品自在线| 国产h片在线观看| 日韩专区在线观看| 日漫免费在线观看网站| 欧美一级精品大片| 国产午夜无码视频在线观看| 亚洲一区成人在线| 在线观看美女av| 久久久久久久久久久黄色 | 亚洲小说春色综合另类电影| 日韩免费观看av| 狂野欧美激情性xxxx欧美| 这里只有精品在线观看| 午夜18视频在线观看| 欧美一区二区免费观在线| 无码人妻av免费一区二区三区 | 欧美日韩第一页| 成年人视频免费在线观看| 日韩h在线观看| www.热久久| 欧美精品v日韩精品v韩国精品v| 韩国av中文字幕| 洋洋av久久久久久久一区| 男人晚上看的视频| 国产欧美日韩综合精品一区二区 | 国产模特av私拍大尺度| 日本黄色一区二区| 91精品国产乱码久久久张津瑜| 亚洲色大成网站www久久九九| 免费看黄色av| 久久久.com| 特级西西人体wwwww| 国产91富婆露脸刺激对白| 久国产精品视频| 免费成人av资源网| 97xxxxx| 久久久亚洲人| av观看免费在线| 国产精品久久久久9999高清| 久久久亚洲精品无码| 伊人久久大香线蕉综合热线| 欧美精品卡一卡二| 精品二区视频| 丝袜人妻一区二区三区| 欧美色123| 97视频在线免费| 宅男噜噜噜66一区二区| 国产精品沙发午睡系列| 亚洲人体偷拍| 国产黄视频在线| 国产亚洲精品久久久久婷婷瑜伽| 激情伊人五月天| 99在线观看免费视频精品观看| 乱人伦xxxx国语对白| 国产美女精品| 亚洲国产精品久久久久婷蜜芽| 亚洲一区二区免费看| 免费日韩视频在线观看| 久久在线精品| 精品999在线| 国产精品综合av一区二区国产馆| 欧美性受xxxx黒人xyx性爽| 国产成人综合亚洲网站| 无码任你躁久久久久久老妇| fc2成人免费人成在线观看播放| av无码一区二区三区| 久久久精品免费免费| 精品手机在线视频| 亚洲色图丝袜美腿| 日韩精品一区三区| 在线中文字幕一区二区| 国产精品美女一区| 精品国产三级a在线观看| 亚州视频一区二区三区| 亚洲桃花岛网站| 黄色在线播放网站| 久久久久久国产免费 | 成人午夜在线影院| 最新国产一区二区| 蜜桃成人免费视频| 91麻豆精品国产91久久久平台| 日本三级中文字幕在线观看| 一本色道88久久加勒比精品| 欧美日韩亚洲自拍| 国产老肥熟一区二区三区| av网站免费在线播放| 中文字幕在线视频一区| 欧洲猛交xxxx乱大交3| 精品久久久国产精品999| 一区二区三区黄| 日韩精品视频在线播放| 三区四区电影在线观看| 国内自拍欧美激情| 欧美大片1688网站| 国产一区在线免费| 97偷自拍亚洲综合二区| 1024av视频| 国产精品香蕉一区二区三区| 国产精品扒开腿做爽爽| 亚洲一级不卡视频| 亚洲资源在线播放| 日韩高清中文字幕| 久久bbxx| 国产精品第一页在线| 精品按摩偷拍| 在线视频不卡一区二区| 视频一区视频二区中文字幕| 久久久久亚洲av无码网站| 国产精品天天看| 精品人妻一区二区色欲产成人| 日韩午夜小视频| 亚洲s色大片| 91爱爱小视频k| 一区二区三区四区精品视频| 一区二区三视频| 日韩成人dvd| 亚洲熟妇无码av| 亚洲成人精品一区| 精品国产亚洲av麻豆| 色偷偷av一区二区三区乱| 欧美va在线观看| 久久天天狠狠| 中文亚洲字幕| 久久久久亚洲AV成人无码国产| 亚洲欧美福利一区二区| 96日本xxxxxⅹxxx17| 亚洲人成在线电影| 电影在线观看一区| 成人高清在线观看| 欧美va天堂在线| aaa一级黄色片| 亚洲欧洲色图综合| 五月激情丁香网| 亚洲香蕉伊综合在人在线视看| 五月天国产在线| 国产主播一区二区三区四区| 极品日韩av| 欧美熟妇精品一区二区蜜桃视频| 亚洲色图在线看| a级片在线免费看| 久久影视电视剧免费网站| 成人污版视频| 欧美性受xxxx黑人猛交88| 久久99精品久久久久久动态图| 欧美福利第一页| 欧美色视频在线| 日本精品一区二区三区在线播放| 国产精品永久免费| 99久久精品网| 在线免费看v片| 一区二区三区精品在线| 亚洲国产精品视频在线| 欧美激情欧美狂野欧美精品| 成人台湾亚洲精品一区二区 | 国产精品亚洲第一区在线暖暖韩国 | 手机在线不卡av| 欧美一级成年大片在线观看| 免费av一区| 欧美午夜aaaaaa免费视频| 国产精品欧美综合在线| av网站在线免费看| 久久久久久久一| 神马久久av| jizz欧美性11| 亚洲精品欧美激情| 人妻视频一区二区三区| 欧美一二三视频| 久久综合av| 老司机av网站| 欧美网站在线观看| 电影av一区| 91精品在线一区| 伊人久久亚洲热| 日本美女xxx| 欧美一区二区视频在线观看2022 | 国产精品无码一区二区三| 欧美日韩在线影院| 亚洲成人影院麻豆| 国产精品v欧美精品v日韩精品| 国产精品久久久亚洲一区| 最新中文字幕av| 日韩欧美成人一区二区| 伊人久久国产| 91社在线播放| 99久久夜色精品国产网站| 天天射天天干天天| 欧美成人免费网| 窝窝社区一区二区| 亚洲天堂伊人网| 欧美网站在线观看| 超碰在线caoporen| 免费看成人午夜电影| 国产一区在线精品| 中文字幕视频网站| 久久资源免费视频| 精品不卡一区| 韩国av中国字幕| 欧洲色大大久久| 国产一二三在线| 国产精品99久久久久久大便|