長らく使用していたNexus7(2013)ですが、OSのバージョンがかなり古く(Version6.0.1なのでmarshmallow
になります)公式のイメージの更新も行われない状況でした(セキュリティパッチは2016年8月の提供で終了しています)。個人的には、起動さえしてしまえばそこそこ使える状況ではあったので、KindleやYoutubeなどで使用していました。ただ、セキュリティ的には微妙でもあるので、なんとかならないかなという状況でした。
そんななか、使っていた家族がiPadを購入したこともあり、Nexus7が自分のもとにやって来ました。そこで、自己責任にはなりますが、一念発起してAndroidのバージョンアップをしてみました。詳しい内容はかなりネット上にあると思いますのでそちらを見てもらえればいいかなと思います。ただ、自分はそれをみてもハマった点があったのでそのあたりをメモとして記録してみたいと思います。
この作業は自己責任でお願いいたします。真似をして文鎮になっても保証できないので、それを覚悟して行ってください。
多分、この手のAndroidのバージョンアップなどをしている方からすれば、常識という点でも引っかかっていたような感じですけどね。
基本的な流れは以下の2つのサイトを参考にさせていただきました。
↑おすすめ
このバージョンアップによりAndroidのベースがVersion11になりますが、実際にはLineage OS 18.1
になります。Lineage OS
は以前RaspberryPi
にもインストールしていたAndoroidベースのOSとなります。
LineageOSはAndroidをベースとした、スマートフォンやタブレット用のフリーでオープンソースなオペレーティングシステムである。
参考(RaspberryPiへのインストール)
では作業を進めていきます。
作業の手順
作業は以下のような手順で行っていきます。
adb
およびfastboot
コマンドの導入- USBデバッグなどの有効化
- 必要なファイルのダウンロード 3.TWRPの導入
- システム領域拡張
- OSファイルとOpen GApps のファイルの転送とインストール
- キャッシュの削除と再起動
Lineage OS
の設定
わかっている人であれば参考サイトとこの手順のメモですんなりアップデートできると思います。
adb
およびfastboot
コマンドの導入
これは以下のファイルをダウンロードしてパスの通った場所にコピーすればOKです。展開先はCドライブのルートにしておくと楽でしょう。コピー後に必ず、コピーしたフォルダを環境変数PATH
に追加してください。
USBデバッグなどの有効化
USBケーブルNexus7とPCを接続します。そして、Nexus7の設定からUSBデバックの有効化を設定します。このあたりもAndroidで開発などをしている方であればご存知かと思います。
引っかかった点その1
そしてここで引っかかりました。コマンドラインからadbを以下の様に使うのですが、デバイスが見つかりません。
PS1 > adb devices
原因はデバイスドライバーがインストールされていないからです。以下のサイトからWindows用のUSBドライバを入手してインストールします。これもファイルを展開して、infファイルを使ってドライバをインストールを行います。インストールを行うとタブレットが認識されるようになります。
必要なファイルを取得
後続の作業に必要なファイルをダウンロードします。
- sysrepart_1280_120.zip
- lineage-18.1-20210207-UNOFFICIAL-flo.zip → Wi-FiモデルのOSイメージ(LTEモデルは別のファイルなので注意)
- open_gapps-arm-11.0-pico-20210130-UNOFFICIAL_TEST.zip
上記のファイルはXDA開発フォーラムの以下のリンクにすべてありますのでダウンロードしておきます。
TWRP
導入&引っかかった点その2
実はデフォルト状態では新しいOSイメージをインストールすることがパーティションの領域の設定によって行うことができません。そこで、先程ダウンロードしたファイルであるsysrepart_1280_120.zip
をつかってパーティションサイズを拡張していくのですが、そのままでは作業はできず、その前段でTWRP(Team Win Recovery Project)
を導入してから作業を行っていきます。
まずは、電源ボタン + 音量下ボタン を押しながら起動するか、またはUSB接続中に以下のコマンドで再起動することで、fastbootモード
で起動します。
PS > adb reboot bootloader
これ以降の作業でも引っかかります。adb
が起動できないことがあります。色々調べたところ、あるアプリが自動でadb
を起動させてしまっているようで、手動のadb
が重複起動になってしまうため起動できなかったようです。そのアプリはSplashtop Wired XDisplay
でした。以下の情報がなかったらわからなかったです。
adb
の起動がうまくいったら、続いては領域の拡張となります。Bootloaderの端末メーカーlockが状態が解除できていないと以降の作業ができないので、それを行う必要があります。注意点としてはunlockすると通常のOSの起動はできません。そのため、unlockしたあとはfastbootモード
での作業のみしかできないことも理解しておく必要があったようです。
Bootloaderをunlockするには以下のように実行します。
PS > fastboot oem unlock
実行後しばらくすると、端末の方でYES/NOを聞かれるので、音量ボタンで選択、電源ボタンで決定することで、unlock状態になります。fastbootモード
の画面の一番下にもunlockと表示されるようになります。(※これ以降は通常モードの起動ができないので必ずfastbootモード
で起動てください)
Bootloaderをunlock状態にしたら、TWRP
を導入していきます。
TWRP(Team Win Recovery Project)
とはカスタムリカバリ(Recovery)の一種で、リカバリとはシステムの初期化やOSの書き換えなどを行うためのものです。標準状態のAndroidでも搭載されているのですが、TWRPを用いることで標準リカバリではできなかった、非純正ROM(カスタムROM)を書き込んだり、システム(ROM)全体のバックアップをしたりすることができるようになります。
https://andmem.blogspot.com/2014/08/twrp-boot.html#chapter-1
コマンドラインから事前にダウンロードしておいたファイルを転送して、TWRP
のイメージを転送して再起動をします。
PS > fastboot flash recovery twrp-3.3.1-0-flo.img PS > fastboot reboot-bootloader
fastbootモード
の画面でタブレット端末側の音量キーを押して、【Recovery mode】に表示をかえて、タブレット端末側の電源ボタンを押すことで決定します。
システム領域拡張
再起動後にTWRP
が起動するとメニュー画面が表示されます。TWRP
起動時点では/Systemパーティション
がマウントされていないので、
メニューから【Mount】ボタンを選択して、system
パーティションにチェックをいれてマウントを行います。
続いてsysrepart_1280_120.zip
をファイル転送して、リカバリを行うことでパーティションが拡張されるようになります。
PS > adb push sysrepart_1280_120.zip /sdcard/
TWRP
のTOP画面の【Install】ボタンをタッチすると先程のsysrepart_1280_120.zip
をファイルが表示されているので
ファイル名をクリックして、【Swipe to confirm Flash】の部分を右側にスワイプすると、ファイルが実行され自動的にパーティションの
リサイズが行われます。
リサイズされたらタブレット端末側をRecoveryモードで再起動すればOKです。容量を確認しておきましょう。
OSファイルとOpen GApps
のファイルの転送とインストール
あとはOSイメージの転送とインストールを行うのですが、先にストレージのフォーマットを行っておきます。
【Wipe】ボタンタッチ→【Fotmat Data】選択→”yes”と手入力
フォーマット後に事前にダウンロードをしておいたファイルの転送を行い、
PS > adb push lineage-18.1-20210207-UNOFFICIAL-flo.zip /sdcard/ PS > adb push open_gapps-arm-11.0-pico-20210130-UNOFFICIAL_TEST.zip /sdcard/
端末側で【Install】ボタンをタッチしてファイルを選択してインストールを行っていきます。OSイメージのインストール後に【Add more Zips】ボタンをタッチすれば、Open GApps
も続けてインストールできます。
キャッシュの削除と再起動
あとはインストールが終わったら【Wipe cache/delvik】を選択しておけば不要なキャッシュを削除できるので、念の為行っておきます。最後に再起動を行えばAndroid11(Lineage OS 18.1
)へのバージョンアップが完了します。
Lineage OS
の設定
Lineage OS
の設定は通常のAndroidと同じ手順なので、説明がなくても迷うことはありません。
設定が終わるとOSの設定は以下の様に変更されています。無事にバージョンアップできました。
このバージョンアップ作業ではGoogleのアプリなどはPlayストア
のみが導入されている状態なので、必要があればChrome、Gmail、Gboadなどもインストールしておくと良いでしょう。
おわりに
画面のキャプチャができなかったのでほとんど文字だけでの話になってしまいましたが、参考サイトを見てもらえればわかりやすく解説されていると思いますのでよく見て、理解しながらの作業を行っていきましょう。
今回のバージョンアップで正直動作が遅くなるのかなと思っていたのですが、以前とほとんど変化してないような気がします。オリジナルのAndroid Version6.0.1では、通電(スリープからの復帰後)してから2分~3分ぐらいはプロセスの通信でタブレットの操作ができない状況になっていたのですが、バージョンアップ後はそこまで操作できるまでに時間もかからず、そこまでの動作の遅さも感じていません。(というか変わっていない)
もちろん、最近のタブレットを購入すればもっと快適なのはわかりきっている話なのですが、まあこれはこれでいいかなと思っています。(金銭的なコストは発生しませんし)
ということで、Nexus7(2013)のOSをバージョンアップさせてみたという話でした。