2015年3月15日日曜日

Galaxy Nexus(SC-04D)にAndroid4.4.4(KitKat、Shiny Rom)を導入

いま使っているスマホはGalaxy Nexus(GN)という2011年発売の機種で、もう4年位使っている。

その間ファームウェアを4.2.2に上げたり、MVNOのセルスタンバイ対応のパッチを当てたりとして来たが、ファームウェアを4.2.2に上げた際に音楽を聞きながらWEBを見ているとよく音楽アプリが落ちてしまう状況になってしまった。

「ファームウェアのバージョンが上がって多くのメモリが必要になったのかね。仕方がないか」

と思っていた。最近の機種とスペックを比べると、

 ・最近のハイエンド   クアッド2.2GHz、3GB
 ・最近のミドルレンジ  クアッド1.2GHz、2GB
 ・このGN         デュアル1.2GHz、1GB

とメモリは2GB搭載で、CPUも見劣りがする。


「そろそろ変え時か」と思い新しいスマホを物色したところ、

 ・Sony Xperia Z Ultra C6833  クアッド2.2GHz、2GB  32,815円@expansis
 ・ASUS Zenfone 5        クアッド1.2GHz、2GB  28,940円@ヨドバシ.com

この辺りが良さそうだと思った。このスペックでこの価格とは昨今の低価格化は驚き。

しかしいざポチろうとすると「3万円はお金が惜しいぁな」と思ってしまいどうしても買えなかった。

-----
そんな折にAndroid4.4の新機能の記事を見たところ、少ないメモリでも動くように最適化されたとの情報を見つけた。

■低性能端末でも使えるか? Android 4.4 KitKatの新機能39選@IT
http://www.atmarkit.co.jp/ait/articles/1312/09/news015.html

この記事を見ると、

「Android 4.4は512MB程度のメモリしか搭載されていない世界中のエントリモデル(低性能だが低価格な端末)でも動作するように設計されています。」

とのこと!おーこれはすごい。ということはバージョンアップしたら更にメモリ食いになって余計に遅くなるだろうと思っていたが、ひょっとしたら早くなるかも?

という事で4.4(KitKat)に上げる事にした。

-----
SC-04Dは公式では4.2.2までしかファームウェアは出ていないので有志のカスタムROMを入れる事になる。調べたところShiny ROMというのが標準に近いらしいのでこれを入れることに決定。

(参考ページ)
■Galaxy Nexus(SC-04D)にKitkat(Android4.4)を・・・「Shiny ROM」を導入してみました。
http://highmix-w.net/world/blog/?p=1259

参考になったこのページを見ると、ざっくり言ってリカバリーソフトのTWRPを導入してROMを焼いているだけだったので、

「私のGNにはもうリカバリーソフトとしてTWRPが入っているから、Shiny ROMを/sdcardの下にダウンロードしてTWRPから焼けば良いだけだ」

と言うことで実施したところ、焼いている最中にエラー発生!

うーん、なんでだろう。勿論Wipeとかちゃんとやっていたのに。

「もしかしたら音楽データとかタップリ入っているから空き容量不足かな?」

と思いTWRP上からこういったデータを全部消し、/sdcard上は10GB以上空いている状態にして再実行しても同じ状況。

「まずいなぁそういえばこのTWRPのバージョンは2.5.0.0になっているけど古すぎたのが原因か?」

と今頃思ったが、しかしもう再起動してもAndroid OSは立ち上がらない状況。仕方がないのでTWRPの最新版のインストールから行うことにした。

という事でその時の手順メモを備忘の為に残す。

-----
0.機材状況
・スマホ:SC-04D
 bootloader unlock済
 AOKP_JB_MR1_Build6(4.2.2)導入済
 TRWP2.5.0.0導入済

・PC:AM3450-A84D
 Windows7HomePremium
 Java JDK、Android SDK共に未導入

詰まるところ以前4.2.2を入れてそのまま使っており、その後PCを入れ替えたのでPCの環境設定からやらなければならないという事。
このPC設定が意外と面倒なんだよな・・・だから古いTWRPのまま強行したんだよね。


1.PC環境設定(1):Java JDKインストール
PCにはJava JREしか入っていなかったので、JDKをインストール。
下記URLから「jdk-8u40-windows-x64.exe」をダウンロードしインストール、一応再起動。
http://www.oracle.com/technetwork/java/javase/downloads/index.html

昔はJavaのインストールディレクトリにPathを切らないといけなかったが、今は大丈夫みたい。

2.PC環境設定(2):Android SDKインストール
下記URLから「android-sdk_r24.0.2-windows.zip」をダウンロードしインストール。
http://developer.android.com/sdk/index.html

※Stand-alone SDK ToolsのZIP版

ZIPを解凍して出来た「android-sdk-windows」フォルダを任意のところに移動する。私はDドライブの直下に移動。

ここで注意点を1つ。この時インストーラー版ではなくZIP版を使う事。
実は最初インストーラー版を使ったのだが、その次のステップのパッケージのダウンロードでエラーになってしまい相当悩んでしまった。ZIP版ならそのような事は発生しなかった。

3.PC環境設定(3):Android SDKを起動して追加Packageをインストール
「android-sdk-windows」フォルダの中にある「SDK Manager.exe」を起動。
そうすると下記のような追加パッケージのインストール画面になるので、下の方にある「Google USB Driver」にチェックが入っている事を確認して右下の「Install x package...」ボタンをクリック。
※このスクリーンショットはPackageインストール後に取得したもの

デフォルトでは「Google USB Driver」以外にもインストールチェックが入っており、私はそれらもインストールしたが、そうするのとインストールにかなり時間が掛かる(軽く1時間以上)ので、多分「Google USB Driver」以外は外しちゃっていいと思う。

4.GNをBootloaderモードで起動
電源が切れた状態で、ボリュームボタンの上下を両方押したまま電源ボタンを長押しする。

5.GNとPCをUSBケーブルで接続
GNにてBootloaderが起動している状態でPCに繋げると、PC上では「Android 1.0」どいうデバイスが接続されたがドライバが入っていない状態になるので、下記手順でドライバを入れる。
 ・デバイスマネージャからAndroid 1.0のドライバ更新を選択
 ・コンピュータを参照してドライバソフトウェアを検索します
 ・コンピュータ上のデバイスドライバの一覧から選択します
 ・すべてのデバイスを表示
 ・ディスク使用
 ・参照
 ・「\android-sdk-windows\extras\google\usb_driver」

ここで注意点を1つ。使うケーブルは純正のものを使うこと。
最初、サードパーティーの充電・同期切換スイッチ付のケーブルを同期モードで使ったのだが、これだとAndroid 1.0にならずUnknown Deviceという状態になってしまう。この状態だと次項のドライバインストールが出来ない(インストールしようとすると弾かれる)ので、純正のものを使うのが安全。

6.TWRPをダウンロード
リカバリーソフトであるTWRPの最新版をダウンロード。
http://teamw.in/project/twrp2/90

この時点での最新版は、「openrecovery-twrp-2.8.5.0-maguro.img」でした。

7.fastbootツールをダウンロード
下記URLからfastboot.zipをダウンロード&解凍し、出来たfastbootフォルダの下に上記TWRPのimgファイルを設置。
http://forum.xda-developers.com/galaxy-nexus/development/manually-update-4-2-1jop40d-galaxy-t2020136

8.fastbootツールを使ってimgファイルを端末に焼く
上記fastbootフォルダ内でシフトを押しながら右クリックし、「コマンド ウインドウをここで開く」を選択。そして出てきたコマンドプロンプトで、

fastboot flash recovery openrecovery-twrp-2.8.5.0-maguro.img

と入力する。するとほぼ瞬時にfinishedと出て完了するはず。

9.Shiny ROMをダウンロード
下記URLからShiny ROMをダウンロードし、fastbootフォルダに設置
http://shinyrom.goofball.org/

今回使ったのは「ShinyROM_maguro_aosp_080914-130930-signed.zip」。

10.Shiny ROMを転送
コマンドプロンプトで、
adb push ShinyROM_maguro_aosp_080914-130930-signed.zip /sdcard

と入力してROMを端末に転送。

※実は今回、先に端末自体でROMをダウンロードしていたので、この手順はやっていない。もしかしたらコマンドが間違っているかも。

11.リカバリーを起動
ボリューム↑を2回押し、「Recovery mode」を選んで電源ボタンを押す。これでリカバリーが起動する。

12.ROMを焼く&リブート
・Wipe → Swipe to Factory Reset をスライドして実施
・Install → 転送したShiny ROMを選択 → Swipe to Confirm Flash をスライドして実施
・Reboot

これで完了。無事に出来て良かった!

0 件のコメント:

コメントを投稿