Android设备常见的刷机方式是连电脑给Android刷,那能不能Android给Android刷机呢,这样拿着更轻巧的设备刷机不是更便携?
刷机具备什么条件呢?
按照电脑刷机方式,我们知道需要以下条件:
①.adb 环境;
②.fastboot环境
③.刷机的设备可以切换到otg host模式
④.终端窗口
Android 固件通常预置有system/bin/adb;fastboot 这个执行文件没有预置。
终端窗口可以通过安装apk实现,那可以推测在可以切换OTG模式的Android设备,如果能在 system/bin/ 预置fastboot可执行文件,可以达到刷机目的。
要在system/bin/能预置文件,需要设备开放了root权限,这个好办,我们可以修改固件实现,现在只缺fastboot.
实际上已经有人开发出了fasboot 安装工具,安装链接里的apk"ADB工具安装器”和"Termux".
链接:https://pan.baidu.com/s/1Y5LsHuZBGGodjQ32FX1U8w
提取码:sk1m
打开"ADB工具安装器",点击“安装” 和 “开启adb服务”即可完成adb 和 fastboot的安装。如下:
打开Termux,如下:
可以看到窗口home目录是在“/data/data/com.termux/files/home”,为方便刷机,可以把刷机脚本push到这里。
执行sh v04_firmware.sh刷机,如下
刷机成功,实际用时跟电脑刷无异。
刷机脚本如下:
#!/bin/bash
su -c adb wait-for-device
su -c adb reboot bootloader
su -c fastboot wait-for-device
su -c fastboot flash boot /sdcard/boot.img
su -c fastboot flash aboot /sdcard/emmc_appsboot.mbn
su -c fastboot flash system /sdcard/system.img
su -c fastboot flash splash /sdcard/splash.img
su -c fastboot flash persist /sdcard/persist.img
su -c fastboot flash cache /sdcard/cache.img
su -c fastboot flash recovery /sdcard/recovery.img
su -c fastboot flash privdata1 /sdcard/privdata1.img
su -c fastboot flash privdata2 /sdcard/privdata1.img
su -c fastboot reboot
echo flash success!!
需要注意的是,刷机需要设备开放OEM锁,有的设备可在“开发者选项”开启,具体因设备而异。查看设备有没放开OEM 锁可通过命令 fastboot flashing get_unlock_ability 得知,除非 fastboot flashing get_unlock_ability 为“1”,否则设备应拒绝 fastboot flashing unlock 解锁命令。
网友评论