爱盲论坛

标题: 分享经验:如何在recovery模式下使用电脑进行刷机。 [打印本页]

作者: 迎着风雨成长    时间: 2020-5-6 13:37
标题: 分享经验:如何在recovery模式下使用电脑进行刷机。
大家好,我是迎着风雨成长。
今天给大家分享一下如何在recovery模式下使用电脑刷机。
友情提示:若使用本教程进行刷机,对您的设备造成了无可挽回的影响,本人概不负责。
废话少说,进入正题。
需要准备的工具:
1.装有 Windows 系统的计算机,一台。
2.配置adb环境的工具,一个。
3.支持数据传输的数据线,一条。
4,.要进行刷机的手机,一部。
5.可以输入字符的键盘,一块。
6.默认开启了adb调试的recovery,一个。
7.屏幕阅读器,一个,可不选。
本刷机方法是在cmd命令行窗口进行操作,若对cmd命令行的使用方法有疑问,请自行学习。
本人的刷机环境:
1.Windows系统版本::Microsoft Windows版本 2004 (OS 内部版本 19041.207)
2.adb环境:已配置。
3.支持数据传输的数据线:已拥有。
4.要进行刷机的手机:redmi k 20。
5.可以输入字符的键盘:已拥有。
6.默认开启了adb调试的recovery:已拥有。
7.屏幕阅读器:争渡读屏软件,版本: 2020 开发版,内部版本: 1.6.0.0 Patch 12 (dev)。
刷机过程中使用的命令:
cmd
启动cmd命令行窗口。
adb
启动adb工具。
adb devices
检查设备连接状态。
adb reboot recovery
重启至 recovery 模式。
adb shell twrp sideload
在 recovery 模式下重启至 sideload 模式。
adb reboot sideload
在 recovery 模式下重启至 sideload 模式的另一个方法。
adb sideload xxx.zip
推送刷机包。
adb reboot
重启至系统。
正式的刷机流程:
第一步:按win + r键打开运行对话框,在编辑框里输入cmd病案回车键。
若不出问题,可听到屏幕阅读器的反馈。
Microsoft Windows [版本 10.0.19041.207]                                                                                 (c) 2020 Microsoft Corporation. 保留所有权利。
屏幕阅读器操作cmd命令行的教程可参见各大屏幕阅读器的说明。
第二部:在cmd命令行窗口输入 adb 病案回车键。
若不出问题,可看到以下信息。
ps,下面的信息太长,纯属我自己恶搞,若判断adb工具启动成功,可跳到下面继续查看剩余的操作步骤。
options:
-a         listen on all network interfaces, not just localhost
-d         use USB device (error if multiple devices connected)
-e         use TCP/IP device (error if multiple TCP/IP devices available)
-s SERIAL  use device with given serial (overrides $ANDROID_SERIAL)
-t ID      use device with given transport id
-H         name of adb server host [default=localhost]
-P         port of adb server [default=5037]
-L SOCKET  listen on given socket for adb server [default=tcp:localhost:5037]

general commands:
devices [-l]             list connected devices (-l for long output)
help                     show this help message
version                  show version num

networking:
connect HOST[ORT]      connect to a device via TCP/IP
disconnect [[HOST]ORT] disconnect from given TCP/IP device, or all
forward --list           list all forward socket connections
forward [--no-rebind] LOCAL REMOTE
     forward socket connection using:
       tcp:<port> (<local> may be "tcp:0" to pick any open port)
       localabstract:<unix domain socket name>
       localreserved:<unix domain socket name>
       localfilesystem:<unix domain socket name>
       dev:<character device name>
       jdwp:<process pid> (remote only)
forward --remove LOCAL   remove specific forward socket connection
forward --remove-all     remove all forward socket connections
ppp TTY [PARAMETER...]   run PPP over USB
reverse --list           list all reverse socket connections from device
reverse [--no-rebind] REMOTE LOCAL
     reverse socket connection using:
       tcp:<port> (<remote> may be "tcp:0" to pick any open port)
       localabstract:<unix domain socket name>
       localreserved:<unix domain socket name>
       localfilesystem:<unix domain socket name>
reverse --remove REMOTE  remove specific reverse socket connection
reverse --remove-all     remove all reverse socket connections from device

file transfer:
push [--sync] LOCAL... REMOTE
     copy local files/directories to device
     --sync: only push files that are newer on the host than the device
pull [-a] REMOTE... LOCAL
     copy files/dirs from device
     -a: preserve file timestamp and mode
sync [all|data|odm|oem|product|system|system_ext|vendor]
     sync a local build from $ANDROID_PRODUCT_OUT to the device (default all)
     -l: list files that would be copied, but don't copy them

shell:
shell [-e ESCAPE] [-n] [-Tt] [-x] [COMMAND...]
     run remote shell command (interactive shell if no command given)
     -e: choose escape character, or "none"; default '~'
     -n: don't read from stdin
     -T: disable PTY allocation
     -t: force PTY allocation
     -x: disable remote exit codes and stdout/stderr separation
emu COMMAND              run emulator console command

app installation (see also `adb shell cmd package help`):
install [-lrtsdg] [--instant] PACKAGE
     push a single package to the device and install it
install-multiple [-lrtsdpg] [--instant] PACKAGE...
     push multiple APKs to the device for a single package and install them
install-multi-package [-lrtsdpg] [--instant] PACKAGE...
     push one or more packages to the device and install them atomically
     -r: replace existing application
     -t: allow test packages
     -d: allow version code downgrade (debuggable packages only)
     -p: partial application install (install-multiple only)
     -g: grant all runtime permissions
     --abi ABI: override platform's default ABI
     --instant: cause the app to be installed as an ephemeral install app
     --no-streaming: always push APK to device and invoke Package Manager as separate steps
     --streaming: force streaming APK directly into Package Manager
     --fastdeploy: use fast deploy
     --no-fastdeploy: prevent use of fast deploy
     --force-agent: force update of deployment agent when using fast deploy
     --date-check-agent: update deployment agent when local version is newer and using fast deploy
     --version-check-agent: update deployment agent when local version has different version code and using fast deploy
     (See also `adb shell pm help` for more options.)
uninstall [-k] PACKAGE
     remove this app package from the device
     '-k': keep the data and cache directories

debugging:
bugreport [PATH]
     write bugreport to given PATH [default=bugreport.zip];
     if PATH is a directory, the bug report is saved in that directory.
     devices that don't support zipped bug reports output to stdout.
jdwp                     list pids of processes hosting a JDWP transport
logcat                   show device log (logcat --help for more)

security:
disable-verity           disable dm-verity checking on userdebug builds
enable-verity            re-enable dm-verity checking on userdebug builds
keygen FILE
     generate adb public/private key; private key stored in FILE,

scripting:
wait-for[-TRANSPORT]-STATE
     wait for device to be in the given state
     STATE: device, recovery, rescue, sideload, bootloader, or disconnect
     TRANSPORT: usb, local, or any [default=any]
get-state                print offline | bootloader | device
get-serialno             print <serial-number>
get-devpath              print <device-path>
remount [-R]
      remount partitions read-write. if a reboot is required, -R will
      will automatically reboot the device.
reboot [bootloader|recovery|sideload|sideload-auto-reboot]
     reboot the device; defaults to booting system image but
     supports bootloader and recovery too. sideload reboots
     into recovery and automatically starts sideload mode,
     sideload-auto-reboot is the same but reboots after sideloading.
sideload OTAPACKAGE      sideload the given full OTA package
root                     restart adbd with root permissions
unroot                   restart adbd without root permissions
usb                      restart adbd listening on USB
tcpip PORT               restart adbd listening on TCP on PORT

internal debugging:
start-server             ensure that there is a server running
kill-server              kill the server if it is running
reconnect                kick connection from host side to force reconnect
reconnect device         kick connection from device side to force reconnect
reconnect offline        reset offline/unauthorized devices to force reconnect

environment variables:
$ADB_TRACE
     comma-separated list of debug info to log:
     all,adb,sockets,packets,rwx,usb,sync,sysdeps,transport,jdwp
$ADB_VENDOR_KEYS         colon-separated list of keys (files or directories)
$ANDROID_SERIAL          serial number to connect to (see -s)
$ANDROID_LOG_TAGS        tags to be used by logcat (see logcat --help)
$ADB_LOCAL_TRANSPORT_MAX_PORT max emulator scan port (default 5585, 16 emus)
第三部:将手机连接到计算机,手机病打开adb调试模式。
第四部:继续在命令行中输入 adb devices 病案回车键。
检查设备是否连接成功。
若出现 6c54a383        device 则为连接成功。
其中,6c54a383是我的设备序列号,device表示处于安卓系统下。
ps,每个设备的序列号都不一样,根据个人显示的为准。
第五步:继续在命令行中输入 adb reboot recovery 病案回车键。
重启至 recovery 模式。
若听到断开连接的提示音,则命令执行成功,否则请检查手机是否授权了本设备的adb调试权限。
ps,若已经在recovery模式下,可跳过第四部、第五步的操作。
第六步:继续在命令行中输入 adb devices 病案回车键。
检查设备是否已经处于recovery模式。
若不出问题,可看到以下信息。
6c54a383        recovery
其中,6c54a383是我的设备序列号,recovery表示处于recovery模式下。
ps,每个设备的序列号都不一样,根据个人显示的为准。
ps,若使用第四部、第五步的命令重启至recovery的,请等待听到连接成功的音效后在执行此命令。
第七部:继续在命令行中输入 adb shell twrp sideload 病案回车键。
若不出问题,可听到一至两声断开连接的音效提示。
第八部:继续在命令行中输入 adb devices 病案回车键。
若不出问题,可看到以下信息。
6c54a383        sideload
其中,6c54a383是我的设备序列号,sideload表示处于sideload模式下。
ps,说一下重启至sideload模式的更多方法。
1.让明眼人点击recovery中的高级字样的按钮,在点击adb 线刷按钮货adb sidelo按钮,病滑动进入adb sideload模式,强烈推荐。
2.使用adb reboot sideload 命令进入,不推荐。
第九部 继续在命令行中输入 adb sidelo 刷机包路径 病案回车键。
例:adb sidelo d:\2.zip
若不出问题,可看到以下信息。
serving: 'd:\2.zip'  (~58%)
其中,d:\2.zip是zip包的完整路径,58%是刷入进度。
若看到 Total xfer: 1.24x,病听到断开连接的音效和感受到手机的震动,则表示完成刷入。
ps,路径不能包含中文字符。
第十步:继续在命令行中输入 adb reboot 病案回车键。
重启至系统。
下面说一个小问题,也欢迎知道的大佬给我解惑:
在某些机型上,使用第九部的方法刷入miui包时,会发生直接显示Total xfer: 0.00x,病听到断开连接的音效和感受到手机的震动,表示刷入失败。
好了,今天的分享已经写到尾声了,写的不好,希望大家见谅。
本帖来自爱盲客户端
作者: 雷霆破晓    时间: 2020-5-6 13:47
原来还可以敲命令进入sideload啊,不错不错,才知道,还可以把三清命令也贴一下。
本帖来自爱盲客户端
作者: 风平浪静    时间: 2020-5-6 14:09
小米红米刷机其实就是一件简单的事情。只要你解锁了,都可以刷。从低版本刷到高版本,从高版本刷低版本。
来自 畅游助手
作者: $$超越梦想    时间: 2020-5-6 14:11
顶顶顶。
本帖来自微秘
作者: 傲世乾坤。    时间: 2020-5-6 14:29
标题: 回楼主迎着风雨成长
首先我这个手机很奇怪,这个品牌网上没有可能是个盗版山寨货。哦不对,是型号,品牌是OPPO的。然后呢,我不会重启到那个什么模式,我找别人帮我弄过有一个英文的,就是可能是那个魔术,但是问题就是他手机开不开了。因为手机被入前线,然后我把这个手机连接到电脑上,电脑有一个提示音,但在文件管理啊,电脑那个叫计算机或者叫我的电脑在里面找,根本找不到,虽然他告诉你设备和机动器只读3,但是另外一个却多出来一个cd系统性那东西根本就不是我们的手机啊,我这个情况怎么解决谢谢,
本帖来自爱盲客户端
作者: 迎着风雨成长    时间: 2020-5-6 14:44
标题: 回沙发雷霆破晓
没用过啊,
本帖来自安卓秘书
作者: 飞行    时间: 2020-5-6 17:35
楼主,我用的手机是红米not4x,我也很想刷机,原来我用过红米2s的时候就是直接用小米助手刷机的,结果现在换了红米not4x以后,小米助手刷机就不行了,我还真想跟你请教一下怎样给我这个手机刷刷机呢,看看你啥时候能用语音来说说怎么操作不,因为文字方面涉及到英文的一些东西,我听起来有点头疼
本帖来自微秘
作者: 希望梦想    时间: 2020-5-6 19:21
请问各位高手有没有办法远程用电脑给手机旧砖刷机。就是以前这个手机还能用,不知道什么原因,就是开不了机了,应该是系统坏了可以刷一下机嘛,所以就专刷机。
本帖来自安卓秘书




欢迎光临 爱盲论坛 (https://aimang.net/) Powered by Discuz! X3.2