昨天把 ADB 接好了
今天終於來做正事,把看不順眼的 App 請出去
Android 不認桌面上的名字,它認的是套件名稱,例如:
com.android.chrome
先列出所有 App:
adb shell pm list packages
結果通常有幾百筆,看久了眼睛會想離職
可以加條件:
adb shell pm list packages -s
adb shell pm list packages -3
adb shell pm list packages -d
-s 是系統 App,-3 是自己裝的,-d 是已停用的
如果完全猜不到套件名,就先打開那個 App,再輸入:
adb shell dumpsys window | grep -E 'mCurrentFocus|mFocusedApp'
輸出中像 com.example.bloatware 的東西,就是我們要找的人
如果這行抓不到,可以換:
adb shell dumpsys activity activities | grep mResumedActivity
找到套件名稱後:
adb shell pm uninstall --user 0 com.example.bloatware
看到:
Success
就成功了,桌面圖示會直接消失
不用 root、不用重開機,也不用播放送行音樂
如果出現 Failure,先檢查套件名有沒有打錯
另外有個小坑:pm 失敗時,exit code 有時還是 0
人家嘴巴說失敗,身體卻說成功
現在用眼睛看沒差,之後寫進 App 就會被它搞
--user 0 是什麼user 0 通常就是手機的主要使用者
這個指令不是把 /system 裡的 APK 真的刪掉
只是告訴系統:
這個 App 對使用者 0 來說,不算安裝了
所以它算是可還原,但不代表可以閉著眼睛亂刪
刪錯系統元件,手機還是可能當場表演失憶
怕的話可以先停用:
adb shell pm disable-user --user 0 com.example.bloatware
想反悔再打開:
adb shell pm enable com.example.bloatware
今天先做到這裡
我們已經把 App 弄不見了
但它的 APK 明明還躺在系統裡,明天再來看要怎麼辦