记录几个在 Linux 上通过 adb 工具控制 MI8 的操作。以及无电脑卡刷 TWRP。

ADB

安装命令(ubuntu系列):

1
2
3
4
5
6
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
# 直接试下面的,不行在加 ppa
sudo apt-get install android-tools-adb

adb --version # 检查是否安装

fastboot

1
2
3
# 安装
sudo apt-get install android-tools-fastboot

fastboot 授权: https://developer.android.com/studio/run/device

授权

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# 打开usb 调试,连上 linux,列出所有 usb 设备。
lsusb

rachpt@pc ~ $ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet
Bus 001 Device 002: ID 2109:2812 VIA Labs, Inc. VL812 Hub
Bus 001 Device 071: ID 046d:c534 Logitech, Inc. Unifying Receiver
Bus 001 Device 088: ID 2717:ff48  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

可以通过对比连接前后变化得知哪个是手机的 ID 和idProduct 。

Bus 001 Device 088: ID 2717:ff48 这条即是。新手机有可能带有 Google 字样。

其中ID号:2717,idProduct号:ff48。

参考网上教程,需要建两个文件用于授权。

  1. 第一个文件:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# 先切换目录
cd /etc/udev/rules.d/ && ls
# 新建一个叫 imx-android.rules 的文件。
# 也有说是叫 51-android.rules,等等
sudo vim imx-android.rules
# 填入一下内容
SUBSYSTEM=="usb", ATTRS{idVendor}=="填ID号", ATTRS{idProduct}=="填idProduct号",MODE="0777"
# 后面的 0777 是因为我需要可执行权限。

# 最后加可执行权限
sudo chmod +x imx-android.rules
  1. 第二个文件:
1
2
3
4
mkdir ~/.android
vim ~/.android/adb_usb.ini
# 添加ID号,16进制,0x+ID号
0x2717

重启adb。

1
2
3
4
adb kill-server
# 可能需要 重新插拔一下 usb 线。
adb start-server

黑域

开启黑域服务:

1
adb -d shell sh /data/data/me.piebridge.brevent/brevent.sh

MIUI 广告

通过 adb 冻结 msa:

1
2
3
4
5
6
7
8
adb shell pm disable-user --user 0 com.miui.systemAdSolution # 国内版

adb shell pm disable-user --user 0 com.miui.msa.global # 国际版

# disable 换成 enable 可解除冻结,当然也可以直接在手机上解除。

# 其他命令参考
adb shell pm

其他常见广告关闭方法

刷 TWRP

由于没有使用 windows,手边没有数据线,已经解锁的米8如何刷第三方 rec TWRP呢?

刷开发版,使用自带的 root,授权 本地终端,替换 recovery,然后卡刷 zip,搞定。

下载 原贴链接.

下载地址: 链接: https://pan.baidu.com/s/1cD_ya9pwDIFqrBuglHhNnw 密码: qc1s

这里记录一下。

  1. 需要一个终端模拟器。 有个比较老的 超级终端,网上有汉化版,但是不能使用 方向键,各种不爽。

    推荐使用 juicessh,免费版就够用了,这个可以使用本地终端模拟,记得给 root 权限,首次使用输入 su 获取。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
su

cd /dev/block/platform/soc/

ls

# 找一下类似的文件夹,可能不是下面这个。
cd 1d84000.ufshc/by-name

ls
# 可以看到 recovery这个链接文件。

# 自己下载第三方 rec 的 img 文件到sd卡根目录

dd if=/sdcard/recovery.img of=recovery

# 成功后,使用 reboot 重启

reboot recovery
  1. 卡刷 zip 由于上面改的只是临时rec文件,以后重启失效,需要从上面进入的 rec 卡刷 zip 包。 重点就是 那个 dd 命令。

参考文档1文档2