Delphi/C++BuilderでAndroid開発している方がNexusのファームウェアを書き換えるための手順
Nexusはファームウェアを自由に書き換えられて便利なのだけど、めったにやらない作業なので手順をメモしておく。
というのも、Android O を Nexus 5X にインストールしたら色々と想定外の動きになったので Android 7 にダウングレードしようとしたら、手順をすっかり忘れていて焦ったのです。
必要に応じてバックアップを取る
一連の作業のうち、ブートローダーアンロックする時点で Nexus の中身が綺麗さっぱり無くなってしまいますので、必要なものはバックアップしておきます。
ファームウェアをダウンロードして展開しておく
ここらへんからダウンロードしておきます。 https://developers.google.com/android/images
Android SDK の platform-tools にパスを通しておく。
Delphi/C++Builder 10.2 TokyoでAndroidアプリ開発を行っている場合は、以下のようなパスに Android SDK の platform-tools があるはずです。
C:\Users\Public\Documents\Embarcadero\Studio\19.0\CatalogRepository\AndroidSDK-24.3.3\platform-tools
今回の作業では、このパスの adb.exe や fastboot.exe を使いますが、環境変数 PATH に追加しておいたほうが作業が楽になります。
10.2 より前のバージョンの場合は 19.0 などの内部バージョンのパスを実際のものに置き換えてみてください。
fastboot モードで端末を起動させる
以下のどちらかを実行すれば、fastboot モードで端末が起動します。
- “adb reboot bootloader” を実行する。(端末がUSBデバッグモードの場合に実行可能)
- 電源offの状態から、電源ボタンとボリュームダウンを同時に長押しする。(端末の状態によらず実行可能)
ブートローダーアンロックを行う
fastboot モードの端末をPCに接続して、fastboot flashing unlock
または fastboot oem unlock
コマンドを実行します。
ファームウェアを書き換える
端末が fastboot モードであることを確認の上でファームウェア展開後のディレクトリで flash-all.bat を実行する。
ブートローダーロックを行う
常用する端末の場合は、ブートローダをロックしておきます。アンロックしたままの端末を紛失したら、その端末はいろんな意味でフリーダムですから非常に問題があります。(開発環境だけで使用し、社外に持ち出さない場合はアンロックしたままでもかまわないでしょうけど、その場合でも紛失に備えてロックしておくべきでしょう)
ブートローダのロックは fastboot モードで fastboot flashing lock
または fastboot oem lock
を実行ればOK。