adb命令pm工具講解

在開發(fā)中夺鲜,使用AS工具憋槐,點(diǎn)擊運(yùn)行安裝在測試機(jī)上。會(huì)看到Logcat上打印好多東西止状。我無意間發(fā)現(xiàn)了一段這樣的話烹棉。
05/23 09:30:43: Launching app
adb推送apk到手機(jī)data文件下
$ adb push G:\AppData\OneCreate\app\build\outputs\apk\app_onecreate_v1.3.3_20180523.apk /data/local/tmp/com.ia36.onecreate
我發(fā)現(xiàn)中間夾雜著pm,pm是什么呢怯疤?浆洗??
$ adb shell pm install -t -r "/data/local/tmp/com.ia36.onecreate"
    pkg: /data/local/tmp/com.ia36.onecreate
Success

pm解釋

pm工具為包管理(package manager)的簡稱旅薄,可以使用pm工具來執(zhí)行應(yīng)用的安裝和查詢應(yīng)用包的信息辅髓、系統(tǒng)權(quán)限泣崩、控制應(yīng)用。pm工具是Android開發(fā)與測試過程中必不可少的工具洛口。通常放置在System/bin下矫付。

pm命令

G:\AppData\OneCreate>adb shell pm
usage: pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FIL
TER]
       pm list permission-groups
       pm list permissions [-g] [-f] [-d] [-u] [GROUP]
       pm list instrumentation [-f] [TARGET-PACKAGE]
       pm list features
       pm list libraries
       pm list users
       pm path PACKAGE
       pm dump PACKAGE
       pm install [-lrtsfd] [-i PACKAGE] [PATH]
       pm install-create [-lrtsfdp] [-i PACKAGE] [-S BYTES]
       pm install-write [-S BYTES] SESSION_ID SPLIT_NAME [PATH]
       pm install-commit SESSION_ID
       pm install-abandon SESSION_ID
       pm uninstall [-k] [--user USER_ID] PACKAGE
       pm set-installer PACKAGE INSTALLER
       pm clear [--user USER_ID] PACKAGE
       pm enable [--user USER_ID] PACKAGE_OR_COMPONENT
       pm disable [--user USER_ID] PACKAGE_OR_COMPONENT
       pm disable-user [--user USER_ID] PACKAGE_OR_COMPONENT
      太多省略點(diǎn)...可以自行測試查看

pm單獨(dú)使用是會(huì)報(bào)錯(cuò)的。必須與命令一起使用第焰。adb shell pm -----

pm查詢類

  • list packages:列出設(shè)備中已經(jīng)安裝的所有應(yīng)用包(包括系統(tǒng)應(yīng)用和用戶應(yīng)用)买优;
  • list features:列出所有硬件相關(guān)信息;
  • list libraries :列出當(dāng)前設(shè)備支持的libs挺举;
  • list users:列出系統(tǒng)上所有的users杀赢;
  • list permissions:列出所有已知的權(quán)限;
  • list ‘pkgname’:列出指定包名的associated文件(APK存檔文件)所在湘纵;
  • path ‘pkgname’:查詢package的安裝位置脂崔。

pm操作類

  • install [-lrtsfd] [PATH]:安裝命令;
    • -l :鎖定應(yīng)用程序梧喷;
    • -r:重新安裝應(yīng)用砌左,且保留應(yīng)用數(shù)據(jù);
    • -i:指定安裝包的包名铺敌;
    • -s:安裝到sd卡汇歹;
    • -f:安裝到系統(tǒng)內(nèi)置存儲(chǔ)中(默認(rèn)安裝位置);
    • -g:授予應(yīng)用程序清單中列出的所有權(quán)限(只有6.0系統(tǒng)可用)偿凭;
  • uninstall [options] ‘pkgname’:卸載命令产弹;
    • -k:卸載應(yīng)用且保留數(shù)據(jù)與緩存(如果不加-k則全部刪除);
  • clear ‘pkgname’ :對(duì)指定的package刪除所有數(shù)據(jù)弯囊;
  • enable ‘pkgname’ :使package或component可用痰哨。(如:pm enable “package/class”);
  • disable ‘pkgname’ :使package或component不可用常挚。(如:pm disable “package/class”)作谭;
  • grant ‘pkgname’:授權(quán)給應(yīng)用;
  • revoke ‘pkgname’:撤銷權(quán)限奄毡;
  • set-install-location ‘location’:設(shè)置默認(rèn)的安裝位置折欠。
    其中0:讓系統(tǒng)自動(dòng)選擇最佳的安裝位置。1:安裝到內(nèi)部的設(shè)備存儲(chǔ)空間吼过。2:安裝到外部的設(shè)備存儲(chǔ)空間锐秦;
  • get-install-location :返回當(dāng)前的安裝位置。返回結(jié)果同上參數(shù)選項(xiàng)盗忱;
  • create-user ‘USER_NAME’ :增加一個(gè)新的USER酱床;
  • remove-user ‘USER_ID’ :刪除一個(gè)USER;

示例

查看系統(tǒng)支持的libs
G:\AppData\OneCreate>adb shell pm list libraries
library:android.test.runner
library:com.android.future.usb.accessory
library:com.android.location.provider
library:com.android.media.remotedisplay
library:com.android.mediadrm.signer
library:com.google.widevine.software.drm
library:com.mediatek.effect
library:javax.obex
查看包安裝路徑
G:\AppData\OneCreate>adb shell pm path 'com.ia36.one'
package:/data/app/com.ia36.one-1/base.apk
清除apk的緩存
G:\AppData\OneCreate>adb shell pm clear 'com.ia36.one'
Success
卸載apk應(yīng)用
G:\AppData\OneCreate>adb shell pm uninstall 'com.ia36.onecreate'
Success

結(jié)語

我覺得pm還是挺好用的趟佃,很快扇谣,方便昧捷。省去你手動(dòng)去觸發(fā)操作。 ^ - ^

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末罐寨,一起剝皮案震驚了整個(gè)濱河市靡挥,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌鸯绿,老刑警劉巖跋破,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異瓶蝴,居然都是意外死亡毒返,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門舷手,熙熙樓的掌柜王于貴愁眉苦臉地迎上來拧簸,“玉大人,你說我怎么就攤上這事聚霜〗铺瘢” “怎么了?”我有些...
    開封第一講書人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵蝎宇,是天一觀的道長。 經(jīng)常有香客問我祷安,道長姥芥,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任汇鞭,我火速辦了婚禮凉唐,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘霍骄。我一直安慰自己台囱,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開白布读整。 她就那樣靜靜地躺著簿训,像睡著了一般。 火紅的嫁衣襯著肌膚如雪米间。 梳的紋絲不亂的頭發(fā)上强品,一...
    開封第一講書人閱讀 49,784評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音屈糊,去河邊找鬼的榛。 笑死,一個(gè)胖子當(dāng)著我的面吹牛逻锐,可吹牛的內(nèi)容都是我干的夫晌。 我是一名探鬼主播雕薪,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼晓淀!你這毒婦竟也來了所袁?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤要糊,失蹤者是張志新(化名)和其女友劉穎纲熏,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體锄俄,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡局劲,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了奶赠。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鱼填。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖毅戈,靈堂內(nèi)的尸體忽然破棺而出苹丸,到底是詐尸還是另有隱情,我是刑警寧澤苇经,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布赘理,位于F島的核電站,受9級(jí)特大地震影響扇单,放射性物質(zhì)發(fā)生泄漏商模。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一蜘澜、第九天 我趴在偏房一處隱蔽的房頂上張望施流。 院中可真熱鬧,春花似錦鄙信、人聲如沸瞪醋。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽银受。三九已至,卻和暖如春慎王,著一層夾襖步出監(jiān)牢的瞬間蚓土,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來泰國打工赖淤, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蜀漆,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓咱旱,卻偏偏與公主長得像确丢,于是被迫代替她去往敵國和親绷耍。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理鲜侥,服務(wù)發(fā)現(xiàn)褂始,斷路器,智...
    卡卡羅2017閱讀 134,629評(píng)論 18 139
  • 不知何時(shí)描函,運(yùn)營者和自媒體人興起了一股年終總結(jié)風(fēng)崎苗,這股風(fēng)吹得讓人懷舊,讓人清澈舀寓,它是對(duì)一個(gè)人一年以來的總結(jié)和復(fù)盤胆数,更...
    非著名程序員閱讀 2,291評(píng)論 6 33
  • 嘴角輕揚(yáng),微瞇了眼成一彎弦月互墓,一朵微笑在唇邊綻放必尼。像似一個(gè)彎彎的月牙。人與人之間彼此微笑有什么不可篡撵,當(dāng)你給他(她)...
    梁志敏LZM閱讀 311評(píng)論 0 2
  • list 列表順序容器允許常數(shù)時(shí)間任意位置插入和刪除操作的序列,在兩個(gè)方向和迭代判莉。 列表容器實(shí)現(xiàn)為雙鏈接列表;雙鏈...
    淡淡的悲哀閱讀 204評(píng)論 0 0
  • 命令語法格式:COMMAND options arguments 具體說明 : COMMAND:表示命令的名稱,...
    安公子_閱讀 294評(píng)論 0 2