Android端末にカスタムROMをインストールするには
古いAndroid端末を再利用する必要が出てきた
今年、学校の授業でAndroidアプリのプログラミングを教えることにしたのですが、今の高校生はiPhoneユーザが多くて、Androidの端末を貸し出さないといけなくなりました。ただ、今の手持ちのAndroidは4.1や4.2の端末ばかりで最新の情報を提供できないので良くないなと思ったので、古い端末にカスタムROMをインストールして少しでも新しいバージョンのAndroidの端末を貸せるようにしました。
自分用のメモなので、わかりにくいところもあると思いますが、今後、都度更新するつもりです。
カスタムROMをインストールするまで
Android SDKの場所を確認する。
私はMacで作業をしたので、以下の場所にありました。
~/Library/Android/sdk/platform-tools
ブートローダーのアンロックをする
$ adb reboot bootloader
このコマンドで、ブートローダーが起動します。端末の画面を見て、LOCK STATEが"UNLOCKED"になっていれば、アンロック済みです。LOCKEDの場合は、以下のコマンドを実行して、アンロックします。
$ fastboot oem unlock
TWRPをインストールする。
TWRPのダウンロード
TWRPをダウンロードしておきます。端末によって、対応バージョンが違うようなので、devicesから手持ちの端末を検索して対応しているバージョンのものをダウンロードします。
(私が試したのは、Nexus SとGalaxy Nexus(SC-04D)でしたが、問題ありませんでした)
TWRPのインストール
ブートローダーが起動していれば、書き込み可能なので、以下のコマンドで書き込んでしまいます。
$ fastboot flash recovery twrp-2.8.7.0-crespo.img
Sending 'recovery' (9376 KB) OKAY [ 1.336s]
Writing 'recovery' OKAY [ 0.576s]
Finished. Total time: 1.935s
書き込みが終わったら、以下のコマンドで再起動します。
$ adb reboot recovery
カスタムROMのインストール
TWRPがインストールできたら、adbコマンドやfastbootコマンドを使わなくても書き込みができるので、TWRPでインストールをします。
Android File Transferで端末のストレージにアクセスできるので、(わかるところならどこでもいいと思うけど)TWRPディレクトリにカスタムROMのイメージとMini Dydamic GApps(Google系サービスを利用するためのアプリ)をコピーしておきます。
Nexus Sの場合は、以下のコマンドでインストールしましたが、TWRPからインストールすることも可能だと思います。
$ fastboot erase system -w
$ fastboot flash system system.img
Galaxy Nexusの場合は、TWRPのInstallからコピーしたイメージファイルとGAppsを選択してインストールすると、時間はかかりますが、インストールされます。
カスタムROMのインストール状況
Google Playなどのアプリは入っていないものもあるので、完全にアプリケーション開発用になりそうです。
今後もバージョンアップの対応をしていくことになりそうなので、記録を残しておきます。
- Nexus S
- バージョン4.1.2 → 6.0
- Google Playは未インストール。アプリも最低限度のものしかなかった。
- Galaxy Nexus
- バージョン4.3 → 7.1.1
- Google Playは別途インストールした。Google Play開発者サービスが異常終了しまくる。
- Nexus 5
- カスタムROMをインストール予定
Discussion