Nexus 6用の Android M の Developer Preview をインストールしてみました。
端末が初期化されたり高性能な文鎮化が出来上がるケースも考えられるので、インストールは自己責任で。
準備
USB デバッグを有効にし、OEM Unlock でブートローダーを unlock する。
- 開発者オプションを有効にする
- 「開発者オプション」「USB デバッグ」にチェック
- 「開発者オプション」「OEMロック解除を有効にする」にチェック
ここからは、端末と構築済みの開発環境がちゃんと認識されてる状態で実施。
以降は adb にパスが通ってる状態の Terminal で作業を行う。
ブートローダーのアンロック
Terminal を起動し
- adb reboot bootloader
- fastboot oem unlock
- YES を選んでアンロック。この時点で端末の内容は初期化される。
Android M Developer Preview のイメージを適用する
ここから「Hardware System Images」の Nexus 6 "shamu" のイメージをダウンロードして展開しておく。
- shamu-MPZ44Q-preview-c1d6506a.tgz
- MD5: 307cbf9dab0a38df4ab2639d02be12aa
- SHA-1: c1d6506a74094bdb2f4b8677c7fe4967334f9ea8
と、あるので tgz をダウンロードし展開する。
展開すると下記のファイルが出てくる。
- bootloader-shamu-moto-apq8084-71.11.img
- flash-all.bat
- flash-all.sh
- flash-base.sh
- image-shamu-MPZ44Q.zip
- radio-shamu-D4.01-9625-05.16+FSG-9625-02.94.img
ここで Terminal から flash-all.sh を実行すると、いつものごとく失敗する。
今回のログは下記の通り。
archive does not contain 'boot.sig'
archive does not contain 'recovery.sig'
fastboot(3869,0xa0d941d4) malloc: *** mach_vm_map(size=1779851264) failed (error code=3)
*** error: can't allocate region
*** set a breakpoint in malloc_error_break to debug
failed to allocate 1778070480 bytes
error: update package missing system.img
なので flash-all.sh ではなく flash-base.sh を使ってイメージを適用する。
image-shamu-MPZ44Q.zip を展開して中身のファイルを取り出す。
中には
- boot.img
- cache.img
- recovery.img
- system.img
- userdata.img
- android-info.txt
が入ってる。
面倒なので、このファイルを全部 flash-all.sh が置いてあるフォルダに持ってくる。
持ってこない場合は img を適用する際に、そのフォルダがあるパスに移動して「faslboot flash xxxx.img」 を実施。
flash-all.sh は無視してイメージ適用の準備に使う flash-base.sh を使って下記の手順で行う。
- ./flash-base.sh
- fastboot flash recovery recovery.img
- fastboot flash boot boot.img
- fastboot flash system system.img
- fastboot flash cache cache.img
- fastboot flash userdata userdata.img
- fastboot reboot
これで再起動すると Android M Developer Preview が適用されている状態になる。
system.img は時間がかかるので「Developer Documentation」のAndroid M Preview
Developer Docsに目を通すなどがオススメ。