Android 刷机方案
## 获取
在刷机之前,需要在电脑上下载 **Android Preview** 包,一般我都是到
[安卓中国](https://developer.android.google.cn/preview/download#flash) ,这里可以下载最新的包。
## 手机
相对下载包的获取,比较难的是有一部支持最新的安卓系统的手机,一般
**Preview** 版的系统都是默认支持 **Google** 自己的手机的。
主要有面向的是 Pixel 系列的手机。Google 还是对自己的 **亲儿子** 系列更喜欢。
## 刷机
刷机目前有两个比较麻烦的地方,第一就是需要安装 `adb` 的命令,也就是
**Android** 的功能模块,第二就是需要解锁手机。
### adb 配置
即将 **Android SDK** 下载下来,然后将其配置到环境变量中即可
#### Windows
1. 配置 **ANDROID\_HOME** 变量到环境变量中
2. 配置 **%ANDROID\_HOME%\platform-tools** 到 **path** 中
3. 配置 **%ANDROID\_HOME%\tools** 到 **path** 中
#### Linux & Mac
打开 **profile** 文件,默认为 _.bash\_profile_ 如果使用的是 **zsh** 则编辑 _.zshrc_ 文件。
将下面的内容放到 **profile** 文件中
```shell
ANDROID_HOME=~/developerTools/adt-mac/sdk
export ANDROID_HOME
PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
```
#### Mac
Mac 电脑提供了一个自动安装的内容,可以将 `adb` 相关的内容直接安装,但是如果是想开发 **Android** 应用的话,则必须要按上面的方案进行配置。
首先需要先安装 **brew** ,具体方案见 [Homebrew](https://brew.sh/index%5Fzh-cn) ,或者可以直接看其
**GitHub** 的主页 [Homebrew/brew](https://github.com/Homebrew/brew) 。
然后执行下面的命令
```shell
brew cask install android-platform-tools
```
如果执行刷机的时候,提示 **fastboot is too old** 则需要重新安装
_android-platform-tools_ , 因为 `brew update` 更新是不能更新 _cask_ 库的内容的。
```shell
brew cask reinstall android-platform-tools
```
最后,在命令行中执行 `adb devices` 不报错刚配置成功。如果配置之后,还依然报错的话,可以检查一下是否在使用过程中,将 **USB 调试功能** 关闭了。
### 操作
1. 连接手机
2. `adb devices` 获取手机的 **device id**
3. `adb reboot bootloader` 进入 **bootloader** 模式
4. **如果已经解锁了,则进入第8步,如果未解锁则进入第五步**
5. 进入到 **bootloader** 之后,执行 `fastboot flashing unlock`
6. 如果是 **Pixel 2 XL** 则执行 `fastboot flashing unlock_critical`
7. 如果是更早的设备,则需要执行 `fastboot oem unlock`
8. 进入下载的目录,然后执行 **flash-all** 脚本,如果是 _Windows_ 则是
`flash-all.bat` ,其它的则执行 `flash-all.sh`
9. 执行结束后,手机就已经刷好了,重启就可以使用了
10. 如果执行失败的话,就需要解压目录下的 _image_ 对应的包,然后执行下面的命令
```shell
fastboot flash vendor vendor.img
fastboot flash boot boot.img
fastboot flash system system.img
```
然后重启手机就可以了。
### V 版手机解锁
需要刷入一个工具,才能解锁
```shell
adb push dePixel8 /data/local/tmp
adb shell chmod 755 /data/local/tmp/dePixel8
adb shell /data/local/tmp/dePixel8
```
然后再执行 `adb reboot bootloader` 就可以正常解锁了。
[dePixel8.zip 下载](http://theroot.ninja/depixel8.html)
判断是否 V 版手机
```shell
adb shell getprop|grep cid
```
如果出现 **VZW\_001** 就是 V 版手机
Android 刷机方案的更多相关文章
- (转)Android刷机的一些知识整理
刷机概述刷机原因刷机可以升级和破解固件(在Android上:即可以升级系统,更改系统,获取Root权限):破解系统的原因①安装第三方软件不需要签名,不受证书的束缚:②修改系统的文件,达到系统的瘦身,以 ...
- Android刷机教程
我的机器是Nexus 5 一. 安装驱动 如何进入fastboot模式 1. 拔掉数据线,将手机关机 2. 关机后同时按住[音量减小键]和[开关机键]即可进入Fastboot模式 开启usb调试 - ...
- Android刷机
1.安装第三方recovery 下载自己手机适配的recovery包 https://twrp.me/lg/lgnexus5.html fastboot 卡在 waiting for device $ ...
- miui10 刷机
起因 折腾一下老手机 名词解释 名称 内容 含义 REC Recovery的缩写 Android出厂时自带的恢复模式 (理解为win PE) 双清 data,cache 用户数据+系统缓存 三清 da ...
- Android手机刷机失败的自救方法
刷机对于一些android手机的高级用户来说已经是家常便饭了,很多新手也都跟着教程轻松了学会刷机.升级系统,也都开始经常在网上搜罗一些自制的系统进行刷机,体验新系统带来的新感觉.但是有句古话叫常在河边 ...
- android [因为开了刷机精灵等软件 导致adb 无法使用]error: could not install *smartsocket* listener: cannot bind
今天 使用 刷机精灵后 在使用android studio 时发现 adb 无法正常使用. 于是 想重启 adb.exe , 直接在DOS里杀掉adb输入:adb kill-server 再启动输 ...
- [Android Pro] Android fastboot刷机和获取Root权限
参考文章: https://developers.google.com/android/nexus/images 转载自: http://www.inexus.co/article-1280-1 ...
- Nexus 5 Android 6.0.1刷机、Root
Nexus 5 Android 6.0.1刷机.Root 2016-01-24 一. 准备 1. 备份通讯录等数据,切记. 2. 准备adb .fastboot.网上搜 ...
- Android源码浅析(三)——Android AOSP 5.1.1源码的同步sync和编译make,搭建Samba服务器进行更便捷的烧录刷机
Android源码浅析(三)--Android AOSP 5.1.1源码的同步sync和编译make,搭建Samba服务器进行更便捷的烧录刷机 最近比较忙,而且又要维护自己的博客,视频和公众号,也就没 ...
随机推荐
- C++ProtoBuf的安装与使用
目录 安装(Ubuntu 16.04) 简介 proto2 proto3 用法 proto3 输出结果 总结 @(目录) 安装(Ubuntu 16.04) sudo apt-get install a ...
- 又写了两个实用的微信小程序
忙里偷闲,最近又写了两个小程序. 一个是手机壁纸小程序,名字叫[来搜图],特点是界面干净清爽,没有多余的东西.开发这个是因为讨厌市面上那些壁纸app那样那么多的广告,真的太影响体验了.而且小程序更加轻 ...
- python——pyinstaller踩的坑 UnicodeDecodeError
程序本身运行没任何毛病,奈何用pyinstaller -w xx.py的时候提示——UnicodeDecodeError: 'ascii' codec can't decode byte 0xb3 i ...
- ECMAScript6 VS TypeScript
如果你真正使用过Typescript你会发现他其实是javascript的超集, 这是一个非常简洁的描述 ,之所以称之为Typescript,正是Type一词的表述(强类型),可不仅仅是有一个Clas ...
- 【主动学习】Variational Adversarial Active Learning
本文记录了博主阅读ICCV2019一篇关于主动学习论文的笔记,第一篇博客,以后持续更新哈哈 论文题目:<Variational AdVersarial Active Learning> 原 ...
- Mysql高手系列 - 第22篇:深入理解mysql索引原理,连载中
Mysql系列的目标是:通过这个系列从入门到全面掌握一个高级开发所需要的全部技能. 欢迎大家加我微信itsoku一起交流java.算法.数据库相关技术. 这是Mysql系列第22篇. 背景 使用mys ...
- Spring Boot 2.X(五):MyBatis 多数据源配置
前言 MyBatis 多数据源配置,最近在项目建设中,需要在原有系统上扩展一个新的业务模块,特意将数据库分库,以便减少复杂度.本文直接以简单的代码示例,如何对 MyBatis 多数据源配置. 准备 创 ...
- 写mysql语句时tab键与空格键
某网页上复制的一份mysql语句,报错,重写一遍后,好了,对比后,发现, 可以看到在sublime text中,网上复制的缩进是空白的,tab键是横杠,空格键是一个点
- Mariadb 基于Mycat实现读写分离
环境:Mariadb主:192.168.200.129 Mariadb从:192.168.200.114 Mycat :192.168.200.112 (1) 安装jdk,先查看本机是 ...
- eclipse 的使用
eclipse 的官方下载:https://www.eclipse.org/downloads/ 安装时选择 :Eclipse IDE for Java EE Developers 设置: 1. 编 ...