Nexus 6用の Android M の Developer Preview をインストールしてみました。
端末が初期化されたり高性能な文鎮化が出来上がるケースも考えられるので、インストールは自己責任で。
準備
USB デバッグを有効にし、OEM Unlock でブートローダーを unlock する。
1. 開発者オプションを有効にする
2. 「開発者オプション」「USB デバッグ」にチェック
3. 「開発者オプション」「OEMロック解除を有効にする」にチェック
ここからは、端末と構築済みの開発環境がちゃんと認識されてる状態で実施。
以降は adb にパスが通ってる状態の Terminal で作業を行う。
ブートローダーのアンロック
Terminal を起動し
1. adb reboot bootloader
2. fastboot oem unlock
3. 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に目を通すなどがオススメ。