adb shell pm list packages [options] <FILTER>
打印所有軟件包,可選擇只打印軟件包名稱中包含<FILTER>的軟件包。
不使用參數:adb shell pm list packages,打印設備/模擬器上的所有軟件包
不使用參數:adb shell pm list packages,打印設備/模擬器上的所有軟件包
使用-f參數:adb shell pm list packages -f,輸出包和包相關聯的文件
使用-d參數:adb shell pm list packages -d,只輸出禁用的包。由於本機禁用沒有,輸出為空。
使用-e參數:adb shell pm list packages -e,只輸出啟用的包。
使用-s參數:adb shell pm list packages -s,只輸出系統的包。
使用-3參數:adb shell pm list packages -3,只輸出第三方的包。
使用-i參數:adb shell pm list packages -i,只輸出包和安裝信息(安裝來源)。
使用-u參數:adb shell pm list packages -u,只輸出包和未安裝包信息(安裝來源)。
使用--user參數:adb shell pm list packages --user <USER_ID>,根據用戶id查詢用戶的空間的所有包,USER_ID代表當前連接設備的順序,從零開始:
使用-e參數且設置過濾條件:adb shell pm list packages -e "ximalaya",只輸出啟用的包。
=============================================================================================================
adb shell pm set-install-location 0 1 2 ——————設置應用安裝的默認目錄—— 0 auto ——1 手機內存 ——2 sdcard
adb shell pm get-install-location ——————獲取應用安裝方式
===========================================================================================
adb shell pm install -r -f -s apppath —————— 安裝apk,r 強制安裝,f 安裝手機內存 s 安裝sdcard
adb shell pm uninstall -k packname ——————卸載應用 -k 保留應用數據 /data/data/packname下的數據 或者 /sdcard/Android/data/packnmae
===========================================================================================
adb shell pm enable packname ——————設置應用為可用,或者組件不可用 組件跟類的完整路徑
adb shell pm disable packname ——————設置應用為不可用,在手機上就隱藏了
------------------------------------------------------------------------------------------------------------------------------------------------------
注釋:
1).凍結應用 找到應用的 MainActivity(即MAIN,LAUNCHER):# pm disable com.example.test/com.test.MainActivity (完整路徑:包名/類名)
2). 禁止開機啟動 找到對就的receiver(即action與MainActivity的action相同的):# pm disable com.example.test/com.test.BootBroadReceiver (完整路徑:包名/類名)
===========================================================================================
path <PACKAGE> :查詢package的安裝位置。
install [options] <PATH> :安裝命令。
uninstall [options] <PACKAGE> :卸載命令。
clear <PACKAGE> :對指定的package刪除所有數據。
enable <PACKAGE_OR_COMPONENT> :使package或component可用。(如:pm enable "package/class")
disable <PACKAGE_OR_COMPONENT> :使package或component不可用。(如:pm disable "package/class")
disable-user [options] <PACKAGE_OR_COMPONENT> :參數選項:--user <USER_ID>: The user to disable.
grant <PACKAGE_PERMISSION> :授權給應用。
revoke <PACKAGE_PERMISSION> :撤銷權限。
set-install-location <LOCATION> :設置默認的安裝位置。其中0:讓系統自動選擇最佳的安裝位置。1:安裝到內部的設備存儲空間。2:安裝到外部的設備存儲空間。
(這只用於調試應用程序, 使用該命令可能導致應用程序退出或者其他不適的后果)。
get-install-location :返回當前的安裝位置。返回結果同上參數選項。
set-permission-enforced <PERMISSION> [true|false] :使指定權限生效或者失效。
create-user <USER_NAME> :增加一個新的USER。
remove-user <USER_ID> :刪除一個USER。
get-max-users :該設備所支持的最大USER數。(某些設備不支持該命令)