文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

ADB详解与fastboot以小米为例

2023-08-30 10:32

关注

前言

使用ADB命令可以禁用一些系统应用(免root)。
一般卸载系统软件以系统更新为例,可以通过两种方式:
1)ADB工具卸载禁用。
2)获取root权限,刷模块禁用升级。
本文介绍第一种方式。这种方式相比刷root更加安全可靠。
但是也需要谨慎使用,不能乱删导致变砖。


一、什么是ADB与fastboot?

ADB全称Android Debug Bridge,调试桥作用即调试的接口,一个客户端-服务器端(Android)程序,ADB是Android SDK 的工具,直接操作管理Android设备。

ADB连接物理方式:
adb支持两种连接Android系统的方式,USB方式及网络方式 . 一般android设备默认会设置为USB方式(直接插数据线的方式) . android系统底层运行着一个服务(adbd),在手机系统内部,管理在电脑端的adb命令连接,这个服务在启动时会根据手机的配置监听USB连接或网络

ADB命令如何连接手机
手机通过USB(先安装驱动)或者WiFi通电脑连接
手机开启调试模式:选项-点击8次版本号直到弹出开发者模式提示-开发者选项-调试模式
任务管理器关闭手机助手软件,避免端口冲突

adb devices 则默认连接到手机,默认端口为5037(USB)adb connect/disconnect 手机IP地址(WiFi)

某些命令和文件夹执行需要ROOT权限
adb版本要和手机系统匹配

二、ADB安装

1.ADB下载

ADB下载地址1:https://adbshell.com/downloads
ADB下载地址2:https://developer.android.com/studio/releases/platform-tools.html
进入https://adbshell.com/downloads选择ADB Kit工具包下载,下载完成将其解压缩后,可以得到以下3个核心文件:
ADB

2.ADB驱动安装

一般直接插数据线自动安装。

3.ADB安装

方法一:
我的电脑-》右键属性-》高级系统设置-》环境变量path-》添加adb工具路径。
方法二:
将三个文件剪切到下面两个目录中
C:\Windows\System32
C:\Windows\SysWOW64
ADB

4.fastboot安装

Fastboot,意思是快速启动。Fastboot是一种电脑通过USB数据线对手机固件进行刷写、擦除/格式化、调试、传输各种指令的 固件通信协议 同时也是Google的Android SDK Platform Tools中的一个命令行工具。需要在电脑上安装适合手机的 USB 驱动程序。

在安卓手机中Fastboot是一种比recovery更底层的刷机模式(俗称快速引导模式)。
相对于某些系统卡刷来说,线刷更可靠,安全。Fastboot从字面上来看是快速启动的意思,也算是一个刷机界面,不过比recovery更加底层,这个底层是更加接近硬件层。

当手机不能进入recovery的时候,还能进Fastboot挽救。当不能进入Fastboot的时候,还有Qualcomm 9006/9008端口、MTK端口、QCN端口刷机能挽救。不过当电脑连这些手机刷机端口都不能连上的时候,那可就是砖了。

三、ADB使用

步骤
1)手机-》进入开发者选项-》打开USB调试
2)手机数据线连接电脑-》电脑cmd进入小黑框
3)使用adb命令,详见第四章
如查看系统中所有的包
卸载系统中的应用
卸载完后就可以拔掉数据线了

四、ADB常用命令

adb devices//查看adb已连接的设备信息,出现序列号和device表示已正常连接设备adb shell pm list packages//查看所有已安装应用的包名adb shell pm uninstall -k --user 0 包名//卸载包名所对应的软件(卸载命令1)adb uninstall 包名//卸载包名所对应的软件(卸载命令2,与卸载命令1功能相同,2选1即可)

1、查看adb版本

C:\Users\30608>adb versionAndroid Debug Bridge version 1.0.29

也有另外的效果,应该是安装的路径有问题

E:\other>adb versionAndroid Debug Bridge version 1.0.41Version 29.0.1-5644136Installed as C:\Windows\system32\adb.exe

2、查看系统中所有包

adb shell pm list packages
在这里插入图片描述

3、卸载指定包名对应的软件

adb shell pm uninstall -k --user 0 包名

如何选对应的软件包
法1)在手机上通过第三方软件(如APK查看器等)查看卸载的软件包名,比如这里系统更新的包名就是com.android.updater
法2)打开系统设置——应用管理,右上角选择「显示系统服务」。点击下面的应用,再点击右上角 ⓘ 图标,就能够查看到应用包名。
提示Success就表示卸载成功。以卸载系统更新为例
在这里插入图片描述
更多的adb命令https://adbshell.com/

用来连接设备adb connect ip地址断开设备adb disconnect ip地址终止adb服务/启动adb服务adb kill-server/start-server启动serviceadb shell am startservervice启动activityadb shell am start -n 包名/类名列出所有的选项说明及子命令adb help重启到recovery和fastbootadb reboot recoveryadb reboot fastboot安装APK:adb install [-lrtsdg] <path_to_apk>卸载应用:adb uninstall [-k] <packagename>清除应用数据和缓存:adb shell pm clear <packagename>强制停止应用:adb shell am force-stop <packagename>测试  得到1个小时,设置次数可能在百万以上adb shell monkey -p com.xyy.vwill -s 100 10000--momkeymonkey日志分析:日志: app的日志(adb logcat :crash anr error等日志) monkey执行日志(执行过程,正常结束,异常结束,执行了哪些事件,执行时长)关闭WiFiadb shell svc wifi disable开启WiFiadb shell svc wifi enableping网络动态ping -c 1 -w 1 119.29.29.29/ping 119.29.29.29连接设备,传输文件从设备传到电脑adb pull 文件路径 D:/file/20220421.txt(存放的文件路径和文件名)从电脑传到设备端adb push C:/users/desktop/gc2093_default_JX8006.json  vendor/etc/camera/rkisp2/gc2093_YT-RV1109-2-V2_40IR-2MP-F20.json当传输文件提示没有权限,需要获得权限 adb root   adb  remountadb shell screencap -p /sdcard/screenshots/01.png/adb pull /sdcard/screenshots D:/file--adb命令截图消除屏幕图案:adb shell rm /data/system/gesture.key截图:adb shell screencap <文件保存路径>adb shell screencap /sdcard/screen.png--手机截图保存到SD卡录像:adb shell screenrecord <文件保存路径>注:Ctrl + C停止屏幕录制,或者到三分钟停止,且没有声音adb shellsuwm density--查看设备密度wm density 120--改密度卸载应用程序adb uninstall com.imstlife.anaerobic安装(可以直接拖到文件到cmd里,cmd自动识别路径)adb install anaerobic.apkadb shell pm list packages -3--显示第三方应用包名设备压力测试adb shellsuam start -n com.cghs.stresstest/.StressTestActivity权限adb shellsuchmod -R 777 vendor查询手机cpu和内存信息adb shell cat /proc/cpuinfoadb shell cat /proc/meminfoadb shell psadb shell kill pid连接并进入设备:adb shell发送广播:adb shell am broadcast -a 广播action文件传输(复制):传到板子:adb push <本地路径> <板子路径>从板子传回:adb pull <板子路径> <本地路径>adb push C:\a.txt /sdcard/adb pull /sdcard/a.txt C:\关机:cmd:adb shell reboot -p  serial:reboot -p重启并进入烧录模式:cmd:adb shell reboot efex   serial:reboot efex消除密码:adb shell rm /data/system/password.key串口电量:echo 1 > /sys/class/axppower/axpdebug查询当前充电电流:cat /sys/class/power_supply/battery/current_now滑动解锁:adb shell input swipe x1 y1 x2 y2注:1为起始坐标,2为终点坐标点击操作:adb shell input tap x y注:x,y为要点击的坐标禁止休眠:echo testlock > /sys/power/wake_lock恢复可休眠:echo testlock > /sys/power/wake_unlock切换HMDI输出模式:echo 720p50hz > /sys/class/disp/disp/attr/hdmi_test_mode查看SD卡是否被识别(定位驱动):ls /dev/block查看各分区容量:df查询当前策略:cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor切换策略:echo fantasys > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor获取log:adb shell logcat -v time >>c:\1.5rc2#55-bug-logcat.logadb shell dmesg >> c:\1.2-#01--BUG描述-dmesg.logadb shell mount >> c:\1.2-#46-mount.loglogcat-- 查看日志    adb logcat -v time *:W |grep pid > /data/data/log.txt    adb pull /data/data/log.txt d:/log/    adb shell "logcat -v time *:W |grep pid " > d:/log/log.txt    adb logcat -c日志的指令logcat -v time -n 10 -r 102400 -f /sdcard/logcat.txt(一直发送)logcat -v time -n 10 -r 102400 -f /sdcard/logcat.txt &(发送一次)

整理一下可删除的应用(测试删除后能正常开机使用)
com.miui.systemAdSolution (小米系统广告解决方案,必删) com.miui.analytics (小米广告分析,必删) com.xiaomi.gamecenter.sdk.service (小米游戏中心服务) com.xiaomi.gamecenter (小米游戏中心) com.sohu.inputmethod.sogou.xiaomi (搜狗输入法) com.baidu.input_mi (百度输入法小米版)com.miui.player (小米音乐) com.miui.video (小米视频) com.miui.notes (小米便签) com.miui.translation.youdao (有道翻译) com.miui.translation.kingsoft (金山翻译) com.android.email (邮件) com.xiaomi.scanner (小米扫描) com.miui.hybrid (混合器) com.miui.bugreport (bug 反馈) com.milink.service (米连服务) com.android.browser (浏览器) com.miui.gallery (相册) com.miui.yellowpage (黄页) com.xiaomi.midrop (小米快传) com.miui.virtualsim (小米虚拟器) com.xiaomi.payment (小米支付) com.mipay.wallet (小米钱包) com.android.soundrecorder (录音机) com.miui.screenrecorder (屏幕录制) com.android.wallpaper (壁纸) com.miui.voiceassist (语音助手) com.miui.fm (收音机) com.miui.touchassistant (悬浮球) com.android.cellbroadcastreceiver (小米广播) com.xiaomi.mitunes (小米助手) com.xiaomi.pass (小米卡包) com.android.thememanager (个性主题管理) com.android.wallpaper (动态壁纸) com.android.wallpaper.livepicker (动态壁纸获取) com.miui.klo.bugreport (KLO bug 反馈)
国内版MIUI
com.miui.cloudservice (小米云服务)
com.xiaomi.account (小米账户)
com.android.updater (系统更新)
com.miui.cloudbackup (云备份)
com.xiaomi.market (应用市场)
com.xiaomi.finddevice (查找手机)
com.lbe.security.miui (权限管理服务)
com.miui.securitycenter (手机管家)
MIUI 国际版(欧版 miui.eu)应用包名(欧版可以随便删)
com.google.android.googlequicksearchbox (Google)
com.miui.miservice (服务与反馈)
com.mi.health (健康)
com.mi.globalbrowser (国际版浏览器)
com.miui.huanji (小米换机)
com.miui.newmidrive (小米云盘)
com.miui.bugreport (用户反馈)
com.miui.personalassistant (智能助理)
com.android.hotwordenrollment.xgoogle (谷歌助理1)
com.android.hotwordenrollment.okgoogle (谷歌助理2)
com.xiaomi.mirecycle (小米回收)
com.miui.videoplayer (小米视频国际版)
com.google.android.projection.gearhead (Google Auto/Google 汽车)
com.google.android.gms.location.history (Google 地理位置历史记录)
com.google.ar.lens (Google 智能(虚拟)摄像头)

五、fastboot常用命令

fastboot与手机的连接方式
手机关机进入bootloader模式,用USB数据线连接电脑

列出与电脑连接的设备fastboot devices解锁fastboot oem unlock 解锁码上锁fastboot oem lock刷入boot分区fastboot flash boot boot.img 刷入system分区fastboot flash system system.img 刷入recovery分区fastboot flash recovery recovery.img刷入引导+恢复+系统镜像文件fastboot flashall重启设备fastboot reboot重启到BootLoader fastboot reboot-bootloader擦除系统分区fastboot erase system获取手机信息fastboot getvar all

总结

工具下载
https://download.csdn.net/download/CHengYuP/87700055
谨慎删除。
引用链接
1)https://blog.csdn.net/weixin_69681418/article/details/125995030
2)https://blog.csdn.net/hhx123456798/article/details/121483826
3)https://blog.csdn.net/m0_60352504/article/details/120087498?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-120087498-blog-121483826.235%5Ev29%5Epc_relevant_default_base3&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-120087498-blog-121483826.235%5Ev29%5Epc_relevant_default_base3&utm_relevant_index=2

来源地址:https://blog.csdn.net/CHengYuP/article/details/130200079

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-人工智能
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯