衡阳派盒市场营销有限公司

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

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

3天內不再提示

鴻蒙開發實戰:【包管理子系統】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-03-14 15:23 ? 次閱讀

簡介

包管理子系統負責應用安裝包的管理,提供安裝包的信息查詢、安裝、更新、卸載和包信息存儲等能力。具體功能如下:

包管理子系統架構如下圖所示:

部件內子模塊職責

子模塊名稱職責
包管理接口模塊1.對外提供的安裝更新卸載及通知接口; 2.對外提供的包/組件信息/權限信息查詢接口; 3.對外提供的應用權限查詢接口; 4.對外提供的清除數據的接口;
掃描模塊1.預置應用的掃描; 2.已安裝三方應用的掃描; 3.包配置文件的解析;
安全管理模塊1.安裝過程中的簽名校驗; 2.安裝過程中應用所申請權限的授予; 3.應用運行中權限的校驗;
DBMS模塊1.獲取指定設備ability信息;
安裝管理模塊1.安裝、更新、卸載邏輯處理及結果通知;
包信息管理模塊1.包信息、組件信息的存儲及同步;
設備狀態監聽模塊1.監聽設備的上下線;
Installed模塊特權進程: 1)用于創建、刪除等目錄操作; 2)用于創建、刪除等文件操作; 3)用于設備目錄的沙箱uid/gid等操作
DFX1.包管理維測工具

目錄

foundation/bundlemanager/bundle_framework
├── bundle_tool                        # bm工具存放目錄
├── distributed_bundle_framework       # 分布式包管理服務框架代碼					   
├── common
│   └── log							   # 日志組件目錄
├── interfaces
│   ├── inner_api                      # 內部接口存放目錄
│   └── kits                           # 應用接口
│       ├── js                         # JS接口
│       └── native                     # C/C++接口   					   
├── services                           # 包管理服務框架代碼
└── test						       # 測試目錄

bm工具命令

bm是用來方便開發者調試的一個工具。bm工具被hdc工具封裝,進入hdc shell命令后,就可以使用bm工具。

命令描述
help幫助命令,顯示bm支持的命令信息
install安裝命令,用來安裝應用
uninstall卸載命令,用來卸載應用
dump查詢命令,用來查詢應用的相關信息
clean清理命令,用來清理應用的緩存和數據
enable使能命令,用來使能應用
disable禁用命令,用來禁用應用
get獲取udid命令,用來獲取設備的udid

幫助命令

命令描述
bm help顯示bm工具的能夠支持的命令信息
  • 示例
# 顯示幫助信息
bm help

安裝命令

命令可以組合,下面列出部分命令。

命令描述
bm install -h顯示install支持的命令信息
bm install -p安裝hap包,支持指定路徑和多個hap同時安裝
bm install -p -u給指定用戶安裝一個hap包
bm install -r -p覆蓋安裝一個hap包
bm install -r -p -u給指定用戶覆蓋安裝一個hap包
  • 示例
# 安裝一個hap
bm install -p /data/app/ohosapp.hap
# 覆蓋安裝一個hap
bm install -p /data/app/ohosapp.hap -r

卸載命令

命令可以組合,下面列出部分命令。-u未指定情況下,默認為所有用戶。

命令描述
bm uninstall -h顯示uninstall支持的命令信息
bm uninstall -n通過指定包名卸載應用
bm uninstall -n -k通過指定包名卸載應用時保留數據目錄
bm uninstall -n -u通過指定包名和用戶卸載應用
bm uninstall -n -m通過指定包名卸載應用的一個模塊
  • 示例
# 卸載一個hap
bm uninstall -n com.ohos.app
# 卸載一個hap,保留數據目錄
bm uninstall -n com.ohos.app -k
# 卸載一個hap下面的ability
bm uninstall -n com.ohos.app -m com.ohos.app.MainAbility

查詢命令

命令可以組合,下面列出部分命令。-u未指定情況下,默認為所有用戶。

命令描述
bm dump -h顯示dump支持的命令信息
bm dump -a查詢系統已經安裝的所有應用
bm dump -n查詢指定包名的詳細信息
bm dump -n -s查詢指定包名下的快捷方式信息
bm dump -n -d跨設備查詢包信息
bm dump -n -u查詢指定用戶下指定包名的詳細信息
  • 示例
# 顯示所有已安裝的包名
bm dump -a
# 顯示該應用的詳細信息
bm dump -n com.ohos.app

清理命令

-u未指定情況下,默認為當前活躍用戶。

命令描述
bm clean -h顯示clean支持的命令信息
bm clean -n -c清除指定包名的緩存數據
bm clean -n -d清除指定包名的數據目錄
bm clean -n -c -u清除指定用戶下包名的緩存數據
bm clean -n -d -u清除指定用戶下包名的數據目錄
  • 示例
# 清理該應用下的緩存數據
bm clean -n com.ohos.app -c
# 清理該應用下的用戶數據
bm clean -n com.ohos.app -d

使能命令

-u未指定情況下,默認為當前活躍用戶。

命令描述
bm enable -h顯示enable支持的命令信息
bm enable -n使能指定包名的應用
bm enable -n -a使能指定包名下的元能力模塊
bm enable -n -u使能指定用戶和包名的應用
  • 示例
# 使能該應用
bm enable -n com.ohos.app

禁用命令

-u未指定情況下,默認為當前活躍用戶。

命令描述
bm disable -h顯示disable支持的命令信息
bm disable -n禁用指定包名的應用
bm disable -n -a禁用指定包名下的元能力模塊
bm disable -n -u禁用指定用戶和包名下的應用
  • 示例
# 禁用該應用
bm disable -n com.ohos.app

獲取udid命令

命令描述
bm get -h顯示get支持的命令信息
bm get -u獲取設備的udid
  • 示例
# 獲取設備的udid
bm get -u

審核編輯 黃宇

5a94ffa1b62d74e6095eff0d95d75612.gif

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

    關注

    33

    文章

    8692

    瀏覽量

    151920
  • 鴻蒙
    +關注

    關注

    57

    文章

    2392

    瀏覽量

    43055
收藏 人收藏

    評論

    相關推薦

    【書籍評測活動NO.56】極速探索HarmonyOS NEXT:純血鴻蒙應用開發實踐

    了解并掌握鴻蒙開發的核心技術,以及鴻蒙應用在實際開發中的應用方法。 本書共分為四篇,共計16章,分別為鴻蒙
    發表于 01-20 16:53

    《HarmonyOS第一課》煥新升級,賦能開發者快速掌握鴻蒙應用開發

    開發輕量型APP或元服務。課程涵蓋Stage模型進階、多線程編程、組件狀態管理等核心技能,讓開發者能獨立完成多個模塊業務及多個子系統等復雜模塊開發
    發表于 01-02 14:24

    鴻蒙Flutter實戰:14-現有Flutter 項目支持鴻蒙 II

    分別安裝官方的3.22版本,以及鴻蒙社區的 3.22.0 版本 3.搭建 Flutter鴻蒙開發環境 參考文章《鴻蒙Flutter實戰:0
    發表于 12-26 14:59

    鴻蒙Flutter實戰:08-如何調試代碼

    # 鴻蒙Flutter實戰:如何調試代碼 ## 1.環境搭建 參考文章[鴻蒙Flutter實戰:01-搭建開發環境](https://g
    發表于 10-23 16:29

    鴻蒙Flutter實戰:07混合開發

    # 鴻蒙Flutter實戰:混合開發 鴻蒙Flutter混合開發主要有兩種形式。 ## 1.基于har 將flutter module
    發表于 10-23 16:00

    【「倉頡編程快速上手」閱讀體驗】簡潔包管理的命脈

    包管理,一個簡簡單單,又復復雜雜的內容。其實包管理原理不難,但是做好確實不容易。 倉頡具備自己的包管理。 從C++這種語言來說。除了針對特定系統
    發表于 09-26 22:18

    鴻蒙開發就業前景到底怎么樣?

    鴻蒙, 作為華為自主研發的基于微內核的下一代操作系統,正在逐漸走進人們的視野 。隨著鴻蒙系統的不斷發展和完善,越來越多的人開始關注鴻蒙
    發表于 05-09 17:37

    36歲了還有必要轉行鴻蒙開發嗎?

    鴻蒙開發這事兒,真的挺有必要的! 鴻蒙操作系統,它厲害就厲害在高性能、可擴展,還特智能。現在智能設備和物聯網火得不行,鴻蒙就是要成為這個時代
    發表于 05-09 17:01

    鴻蒙開發圖形圖像:【圖形子系統

    圖形子系統主要包括UI組件、布局、動畫、字體、輸入事件、窗口管理、渲染繪制等模塊,構建基于輕量OS應用框架滿足硬件資源較小的物聯網設備或者構建基于標準OS的應用框架滿足富設備的OpenHarmony系統應用
    的頭像 發表于 03-23 16:50 ?708次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b>圖形圖像:【圖形<b class='flag-5'>子系統</b>】

    鴻蒙開發實戰:【Hdf Framework】

    該倉主要存放OpenHarmony驅動子系統核心源碼信息(包括驅動框架、配置管理、配置解析、驅動通用框架模型、硬件通用平臺能力接口等),旨在為開發者提供更精準、更高效的開發環境,力求做
    的頭像 發表于 03-21 20:29 ?595次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b><b class='flag-5'>實戰</b>:【Hdf Framework】

    鴻蒙開發實戰:【系統服務框架部件】

    系統服務管理子系統中safwk組件定義OpenHarmony中SystemAbility的實現方法,并提供啟動、注冊等接口實現。
    的頭像 發表于 03-21 15:44 ?333次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b><b class='flag-5'>實戰</b>:【<b class='flag-5'>系統</b>服務框架部件】

    鴻蒙開發學習:【驅動子系統

    OpenHarmony驅動子系統采用C面向對象編程模型構建,通過平臺解耦、內核解耦,兼容不同內核,提供了歸一化的驅動平臺底座,旨在為開發者提供更精準、更高效的開發環境,力求做到一次開發
    的頭像 發表于 03-17 22:05 ?664次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b>學習:【驅動<b class='flag-5'>子系統</b>】

    鴻蒙開發實戰:【電話服務子系統

    電話服務子系統,提供了一系列的API用于獲取無線蜂窩網絡和SIM卡相關的一些信息。應用可以通過調用API來獲取當前注冊網絡名稱、網絡服務狀態、信號強度以及SIM卡的相關信息。
    的頭像 發表于 03-14 21:49 ?454次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b><b class='flag-5'>實戰</b>:【電話服務<b class='flag-5'>子系統</b>】

    鴻蒙開發實戰【通話管理

    通話管理模塊主要管理CS(Circuit Switch,電路交換)、IMS(IP Multimedia Subsystem,IP多媒體子系統)和OTT(over the top,OTT解決方案)三種類型的通話,負責申請通話所需要
    的頭像 發表于 03-14 20:10 ?476次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發</b><b class='flag-5'>實戰</b>【通話<b class='flag-5'>管理</b>】

    鴻蒙實戰項目開發:【短信服務】

    數據管理 電話服務 分布式應用開發 通知與窗口管理 多媒體技術 安全技能 任務管理 WebGL 國際化開發 應用測試 DFX面向未來設計
    發表于 03-03 21:29
    措美县| 皇冠博彩网| 大发888娱乐场 zb8| 五家渠市| 游戏百家乐官网押金| 百家乐视频官方下载| 威尼斯人娱乐城介| 且末县| 华侨人百家乐官网的玩法技巧和规则 | 大发888娱乐城开户| 境外赌博| 迪威百家乐官网娱乐平台| 百家乐牌路分析仪| 爱玩棋牌下载| 百家乐官网平台哪个有在线支付呢 | 百家乐庄闲几率| 大发888娱乐城电话| 百家乐游戏解码器| 盛世国际| 罗马百家乐官网的玩法技巧和规则 | 怎样看百家乐官网牌| 百家乐官网平玩法官方网址| 百家乐乐赌| 百家乐官网投注翻倍方法| 百家乐小游戏开发| 大发888玩法技巧| 大发888在线娱乐城合营商| 博彩百家乐带连线走势图| 百家乐官网心得分享| 真人百家乐官网代理合作| 星期8百家乐官网的玩法技巧和规则| 游戏百家乐押金| 德州扑克庄家| 百家乐官网vshow| 百家乐电子| 赌博百家乐官网下载| 易胜博百家乐娱乐城| 百家乐官网的打法技巧| 网上百家乐作弊法| 菲律宾百家乐官网的说法| 百家乐五湖四海娱乐平台 |