用ADB命令解决手机替换系统文件导致死机或无限重启
基础知识:adb 介绍
adb的全称为Android Debug Bridge 调试桥,是连接Android手机与PC端的桥梁,通过adb可以管理、操作模拟器和设备,如安装软件、系统升级、运行shell命令等。
管理设备
注:android手机、模拟器统一称为“设备”
adb devices  // 显示连接到计算机的设备
adb get-serialno // 获取设备的ID和序列号serialNumber
------------------重启----------------------------------------------
adb reboot  // 重启设备
adb reboot bootloader  // 重启到bootloader,即刷机模式
adb reboot recovery  // 重启到recovery,即恢复模式
------------------发送命令到设备--------------------------------------
adb [-d|-e|-s <serialNumber>] <command>
-d 发送命令给usb连接的设备
-e 发送命令到模拟器设备
-s <serialNumber> 发送命令到指定设备
adb相关
adb kill-server // 终止adb服务进程
adb start-server // 重启adb服务进程
adb root // 已root权限重启adb服务
adb wait-for-device // 在模拟器/设备连接之前把命令转载在adb的命令器中
获取设备硬件信息
adb shell  cat /sys/class/net/wlan0/address  // 获取mac地址
adb shell cat /proc/cpuinfo  // 获取cpu序列号
管理设备app
aapt d badging <apkfile> // 获取apk的packagename 和 classname
------------------安装----------------------------------------------
adb install <apkfile>  // 安装apk
adb install -r <apkfile> // 保留数据和缓存文件,重新安装apk,
adb install -s <apkfile>  // 安装apk到sd卡
------------------卸载----------------------------------------------
adb uninstall <package>  // 卸载app
adb uninstall -k <package>  // 卸载app但保留数据和缓存文件
------------------启动app-------------------------------------------
adb shell am start -n <package_name>/.<activity_class_name> // 启动应用
------------------查看内存占用----------------------------------------
adb shell top  // 查看设备cpu和内存占用情况
adb shell top -m 6 // 查看占用内存前6的app
adb shell top -n 1 // 刷新一次内存信息,然后返回
adb shell procrank // 查询各进程内存使用情况
adb shell kill [pid] // 杀死一个进程
adb shell ps // 查看进程列表
adb shell ps -x [PID] // 查看指定进程状态
唐艺昕个人资料
adb shell service list // 查看后台services信息
adb shell cat /proc/meminfo // 查看当前内存占用
adb shell cat /proc/iomem // 查看IO内存分区
文件操作
//android中,sdcard代表内置存储,不同系统中tf卡的设备名可能不同,使用查看adb shell ls mnt查看所有存储设备名。
adb remount  // 将system分区重新挂载为可读写分区
adb push <local> <remote> // 从本地复制文件到设备
adb pull <remote> <local> // 从设备复制文件到本地
adb shell ls // 列出目录下的文件和文件夹,等同于dos中的dir命令
adb shell cd <folder> // 进入文件夹,等同于dos中的cd 命令
为你唱一首歌歌词adb shell rename path/oldfilename path/newfilename // 重命名文件
adb shell rm /system/avi.apk  // 删除system/avi.apk //rm -f 1.apk 强制删除1.apk
adb shell rm -r <folder> // 删除文件夹及其下面所有文件
adb shell mv path/file newpath/file // 移动文件
adb shell chmod 777 /system/f // 设置文件权限 //system 644 all 777
adb shell mkdir path/foldelname // 新建文件夹
adb shell cat <file> // 查看文件内容
进行ADB连接之前,请先复制好adb所需文件到
电脑系统盘Windows文件夹下
运用命令行还可以解决如忘记图形锁屏密码忘记锁屏数字密码之类的问题。
以下正式开始:
以下是本人解决问题是用到的若干语句:(未整理,如果你懂一些linux命令,我相信这已经足够你解决问题,如果你不知道可以先学习)
adb devices
adb shell
su
adb remount
mount -o remoutn rw /system %mount -o remount,rw /
adb chmod 644 /system/SystemUI.apk
adb chmod 644 /system/SystemUI.odex
%
chmod 644 SystemUI.apk
mv /system/SystemUI.apk /system/app/SystemUI.apk
%
上一层  cd \..
返回或退出 exit
/*
android.policy.odex
framework
晓之车中文版framework-res.apk
*/
当adb push DockService.apk /sdcard/
出现faild to copy 'DockService.apk' to '/sdcard//DockService.apk' :Permission denied
原因是/system是只读的,你需要先执行 adb remount
命令 adb remount 之后,命令终端显示
remount failed: Operation not permitted adb remount 失败。
接着:
1. 确定是否正确连接手机了
adb devices
adb shell
su
mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
chmod 777 /system
cd system
chmod 777 app
cd app
chmod 777 SystemUI.apk
4. 然后你就有apk文件(或者系统目录)的读写权限了,例如你就可以使用adb push 把文件push到系统目录中去了,或者删除系统文件。
1. 查看设备
adb devices
这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示
2. 安装软件
adb install <apk文件路径>
方舟子为何躲到美国
这个命令将指定的apk文件安装到设备上
3. 卸载软件
adb uninstall <软件名>
adb uninstall -k <软件名>
如果加 -k 参数,为卸载软件但是保留配置和缓存文件.
4. 登录设备shell
adb shell
adb shell <command命令>
这个命令将登录设备的shell.
后面加<command命令>将是直接运行设备命令, 相当于执行远程命令
daddy baby
5. 从电脑上发送文件到设备
adb push <本地路径> <远程路径>
用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)
6. 从设备上下载文件到电脑
adb pull <远程路径> <本地路径>
用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑
7. 显示帮助信息
一百万个可能mvadb help
这个命令将显示帮助信息
8.删除文件和文件夹
tools>adb remount
tools>adb shell
#su
#cd system/sd/data //进入系统内指定文件夹
#ls //列表显示当前文件夹内容
#rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件
#rm xxx //删除文件xxx
#rmdir xxx //删除xxx的文件夹
9.使用mkdir命令新建文件夹。例如:mkdir images
adb install d:\hello.apk
adb unstall com.huawei.hello
说明:如果带-r选项重新安装apk时,安装在 /data/local/tmp/目录下,手机重启后还是使用原来的apk.
-----------文件操作 系列-----------
adb push <local> <remote>    - copy file/dir to device