ADB卸载
首先,通过adb卸载应用,需要Android系统允许adb调试,正常的手机通过多次点击版本号,都可以进入开发者模式,在开发者模式允许adb调试。在某些Android机顶盒系统,系统是禁用adb调试的。
一、打开adb调试步骤
显示开发者模式:设置->系统->关于手机(关于盒子)->连击版本号->提示还有多少步进入开发者模式->您现在处于开发者模式。
不同手机或者机顶盒打开的模式大同小异,可能显示的名称不一样或者步骤合并或步骤减少。
打开adb调试:在第一步后,退回到设置->系统,可以看到多了一项 开发者选项。点进去之后找到USB调试,打开开关即可。
授权:通过USB把手机连接到PC,或者通过网线连接机顶盒和PC后。手机或者机顶盒会弹出允许USB调试对话框,确认允许之后就可以了。机顶盒需要通过命令连接adb connect 192.168.168.202,192.168.168.202是机顶盒的IP地址。
二、卸载系统应用
拥有root权限下
在Windows或者Mac系统下,打开命令行终端(命令提示符)。
这里以Android机顶盒和Windows系统为例,电脑和机顶盒连接在同个局域网,并知道机顶盒的IP地址。
- adb connect 192.168.130.237。连接上机顶盒,192.168.130.237是机顶盒的IP地址。
- adb root。在终端输入该命令获得root权限。
- adb remount。重新挂载,获得对读写权限。
- adb shell。进入adb命令环境。
- cd /system/app。切换到/system/app目录,一般系统apk都安装在这个目录。
- rm-rfBrowser.apk。卸载系统apk。此时可以从桌面看到浏览器已经别卸载了,卸载其他APK,可以找到的名字就可以,如果不清楚apk的名字,再终端输入ls查看目前所有已安装的系统apk。
- reboot。重启设备,才能生效。此时已经删掉了APK,如果不重启进行安装同个APK,是没办法安装成功,已经安装信息还存在。
注意: Android系统原生并不支持adb root。以及一些手机Android系统定制厂商并没有提供支持,如果需要root,可能需要向手机厂商申请,例如某米手机。如果是自己公司定制,可以将root文件加到系统中,提供定制,方便应用层的伙伴调试。
上面的2、3、4步骤也可以换成下面步骤,原理是一致。
2.adb shell。进入adb命令环境。
3.su。获得root权限。
4.mount -o remount,rw rootfs /system/。重新挂载system分区,使具有读写权限。
没有root权限下
获取APK的包名
没有root权限下,卸载系统应用APK,需要获取应用包名。
- 在有APK安装包的情况下
在终端输入aapt dump badging xxx.apk。xxx.apk为apk的名称。可以看到,不仅有APK的包名,还有其他相关信息。
- 已安装了APK。打开APP后,在终端输入dumpsys activity |ResumedActivity。会得到下面信息。红框内容就是包名。
卸载应用
- adb shell。进入adb环境。
- 在终端输入pm uninstall com.android.chrome就可以卸载APP了。
com.android.chrome为APP的包名。如果没有效果,可以输入pm uninstall --user 0
com.android.chrome看看,表示删除用户空间0的应用。这跟卸载普通应用是同个方式。
总结:
由于现在手机厂商和机顶盒定制较高,底层adb支持的力度都不一样。上面的方式可能会失效。但值得一试。