Skip to content

Latest commit

 

History

History
195 lines (129 loc) · 7.47 KB

install_android_7_nougat_on_nexus.md

File metadata and controls

195 lines (129 loc) · 7.47 KB

如何获取Android 7 Nougat

Android 7.1.1 Nougat当前已经由google官方提供镜像给Pixel, Nexus 5X, Nexus 6P, Nexus 9 和 Pixel C,如果非官方支持的,则或者是厂商支持或者通过开源社区支持升级

通过工厂镜像刷机获取Android 7 Nougat

下载刷机的工具

刷入工厂镜像的首要工具是活的Android SDA,特别是需要adbfastboot工具,可以从Android Studio portal下载

  • 访问Android Studio,页面滚动到最下端,查找对应操作系统的命令行工具command line tools

  • 下载command line tools压缩包,并解压缩,重命名为~/android-sdk。在这个目录的bin子目录下,有一个sdkmanager是用来管理Android SDK的命令行工具,可以用来安装,更新和卸载Android SDK。如果是用Android Studio,可以不使用这个工具,而是通过Android Studio IDE来管理SDK包 通过IDE管理Android SDK

  • 使用sdkmanager安装adb 和 fastboot

sdkmanager "platforms;android-25"

不过,比较奇怪,显示安装完成,但是我没有找到 platform-tools目录。使用sdkmanager --list检查显示

Installed packages:
  Path                 | Version | Description             | Location
  -------              | ------- | -------                 | -------
  platforms;android-25 | 3       | Android SDK Platform 25 | platforms/android-25/

Available Packages:
  Path                              | Version      | Description
  -------                           | -------      | -------
  add-ons;addon-g..._apis-google-15 | 3            | Google APIs
  add-ons;addon-g..._apis-google-16 | 4            | Google APIs
...
platform-tools                    | 25.0.3       | Android SDK Platform-Tools 25.0.3
...
platforms;android-25              | 3            | Android SDK Platform 25
...
tools                             | 25.2.4       | Android SDK Tools 25.2.4

参考 Android Debug Bridge adb工具是位于 android_sdk/platform-tools/,所以又安装一次platform-tools:

sdkmanage "platform-tools"

platform-tools包含了adb工具

仔细找了一下,发现sdk-manager是将SDK软件包安装到了HOME目录下,也就是把platform-toolsplatform都安装到了/Users/huatai目录下(我的个人目录),所以我重新通过sdkmanager设置一次sdk-root目录,然后重新安装一遍

如果需要更新,则执行 sdkmanager --update

如果在配置Android新项目时遇到报错显示Android SDK没有找到(例如我以前安装配置过,但是SDK目录被删除)"You can configure you SDK via Configure | Project Defaults | Project Structure | SDKs"。则按下⌘;打开Project Structure(也可以通过菜单File => Project Structure ...访问),然后点击SDKs,并添加Android SDK以选择对应目录。

激活开发者模式和USB debugging

  • 访问Nexus设备的Settings => About Phone/Tablet
  • 连续点击Build number 7次直到对话框提示你现在已经是一个开发者(developer
  • 再次访问Nexus设备的Settings => Developer options
  • 确保这个Developer options中设置了on并且USB debugging已经开启
  • 激活OEM unlock
  • 将手机通过USB连接到电脑上,并在提示你Allow USB debugging对话框中点击OK

只有激活了USB debugging之后才能在adb devices中看到连接设备

以上步骤完成后,就需要unlock手机的bootloader

Unlock手机的bootloader

Unlock手机的bootloader并不复杂,但是要注意:手机将执行factory reset,并且手机中所有应用程序和个人数据都将丢失,所以**务必确保在这个步骤执行前备份好设备中的数据**。

  • 关闭手机
  • 同时按住电源键音量减小键
  • 在电脑上打开Command Prompt(Windows)或Terminal(Mac),进入到Platform tools目录下,然后执行
./fastboot flashing unlock
  • 同时按下音量增加键电源键来确认bootloader unlock
  • 在电脑上执行以下命令重启手机
./fastboot reboot

刷Android 7.1.1工厂镜像

Factory Images for Nexus and Pixel Devices是google提供的原厂镜像

  • 在中断进入Platform tools目录,执行以下命令检查手机是否正确查看
./adb devices

手机首先要解锁能够看到桌面正常使用,然后再次插入电脑的USB,确认已经进入debug模式,这样才能使用adb devices查看到连接设备

  • 执行刷机: 解压缩下载的工厂镜像,在这个目录下有一个flash-all.sh执行就可以开始刷机
./flash-all.sh

如在Mac平台执行有问题,可以参考How to manually update your Nexus or Pixel

  • 首先确保电脑和手机正确连接,关闭手机,然后同时按下电源键+音量减小键进入bootloader模式,这样使用fastboot命令才能看到连接设备的序列号(adb不需要进入bootloader模式就可以看到设备)
fastboot devices

一定要进入bootloader模式,否则使用fastboot devices看不到设备

  • 首先刷入bootloader
fastboot flash bootloader [bootloader file].img

瞬间显示完成

target reported max download size of 494927872 bytes
sending 'bootloader' (3532 KB)...
OKAY [  0.102s]
writing 'bootloader'...
OKAY [  0.209s]
finished. total time: 0.311s
  • 上述bootloader文件刷入以后需要重启回bootloader已确保所有工作正常
fastboot reboot-bootloader
  • 然后更新基带(flash the updated radios)
fastboot flash radio [radio file].img

显示

target reported max download size of 494927872 bytes
sending 'radio' (48728 KB)...
OKAY [  1.301s]
writing 'radio'...
OKAY [  2.173s]
finished. total time: 3.474s

然后再次启动bootloader

fastboot reboot-bootloader
  • 最后刷入正轨系统镜像

注意 以下命令将擦除整个设备数据,如果不希望擦除设备,则不要使用-w参数,则不会删除用户数据

fastboot -w update [image file].zip

上述工作完成后,则重启手机,正常开始使用

OTA更新镜像

如果不希望unlock你的bootloader,则需要sideload一个OTA更新。OTA更新比较简单,通过Platform Tools目录下的adb直接将镜像更新推送到手机里

./adb devices

./adb reboot bootloader

./adb sideload [OTA file].zip

参考