この記事をシェアする

初心者向け(?)カスタムROM解説講座

この記事をシェアする

カスタムROMというものに興味を持ち始めた初心者向けに、カスタムROMに関する基礎的な部分を解説します。

はじめに

  • このページに載っている情報が全て正しいとは思わないでください。書いている私も初級者です。
  • このページに載っている情報を参考にしたからといって、私は責任取れません。すべて自己責任です。
  • わからない事があったら、まずはこのサイトを頼ってください。

関連記事

そもそも”ROM”とは何か

ROMとはRead Only Memoryの略で、世間一般では以下のような物を指す言葉のようです。(IT用語辞典より引用)

ROMとは、半導体などを用いた記憶素子および記憶装置の一つで、製造時などに一度だけデータを書き込むことができ、利用時には記録されたデータの読み出しのみが可能なもの。

コンピュータなどの電子機器を制御するBIOSやファームウェアなどを記録するために機器の本体に内蔵されていることが多く、利用者が直に目にする機会はあまりない。

ということで、本来であればROMとは「機器の動作に必要なソフトウェアが書き込まれているメモリ」を指す言葉ですが、それが転じてAndroid界隈では「機器の動作に必要なソフトウェアそのもの」、つまりAndroidというソフトウェアそのものを指しています

「メーカー公式ROM → メーカー公式Android」や「カスタムROM → カスタムAndroid」なんて言い換えるとイメージしやすいかもしれません。

カスタムROMとは

ざっくり言うなれば「メーカー非公式のAndroid」です。

カスタムROMによってそれぞれですが、root化との親和性が高かったり、パフォーマンスが改善されていたり、機能が追加されている点がメリットです。

その反面、メーカー非公式なわけですから、動作が不安定だったり、正しく動かない機能があったり、何があっても自己責任である点がデメリットです。

広告

root化との違い

よくある例が「root化とカスタムROMを混同している」というパターンですが、この2つは別物です。

root化は「ROMはそのままで管理者権限を得る」という行為ですが、カスタムROMのインストールは「ROMそのものを入れ替える」という行為であるため、基本的には別の行為です。

ただし、概してカスタムROMはroot化をする前提で作られているため、全く関係がないとも言い切れません。

広告

知っておくべき領域・パーティション

bootloader (aboot)

端末に電源を入れた際に1番最初に起動する領域で、吹っ飛ばすと端末が高級文鎮と化します。ふざけてbootloaderを吹っ飛ばすと冗談抜きに復旧できなくなるのでやめましょう。

起動時のsystemの改変チェックやカーネルの署名チェックを行っており、Android端末のセキュリティ上で1番重要な領域です。

recovery

リカバリーモード用のデータが保存されている領域です。

メーカー公式のリカバリーでは端末の初期化とメーカー公式ROMのインストールぐらいしかできませんが、それとは別にカスタムリカバリーというものも存在しており、Android端末ををアレコレするのに便利な機能が色々追加されています。

system

Windowsで言うところのCドライブに当たります。ですので、systemをフォーマットするとAndroidが起動しなくなります。

「カスタムROMのインストール=system以下の入れ替え」と考えておけば良いでしょう。

data (userdata)

ユーザーの設定やアプリのデータ、保存した画像データや音楽データが保存されているパーティションです。

dataをフォーマットしてもAndroidは起動しますが、全てのデータが消されて出荷状態に戻ります。

cache

一時ファイルが保存されている領域なので、基本的にフォーマットしても何も問題は起きません。(cacheにセーブデータを保存していた某ゲームのような例外はありますが。)

sdcard

いわゆる内部ストレージに当たるのがこのsdcardです。そのため、sdcardをフォーマットすると保存していた画像データや音楽データがすべて消えます。

sdcardはdata以下に配置されているため厳密にはdataの一部なのですが、カスタムリカバリーではsdcardのみ別扱いにして、消したり消さなかったり自由にできるようになっています。カスタムROMをインストールするたびに内部ストレージも消していては手間がかかりすぎるからです。

boot

「カーネルとかがある領域っぽい」ぐらいしか理解しておらず、正直よくわかってないです。勉強したら追記しておきます。

vendor

Androidは大部分がオープンソースで開発されていますが、そうは言っても100%ではありません。そういった「オープンソースではない、プロプライエタリなblob」が格納されているのがvendorです。

広告

端末でカスタムROMを使用するために必要な3要素

BootloaderをUnlockできる

カスタムROMのインストールというのはつまるところsystemやカーネルの書き換えを行うわけですが、通常状態ではbootloaderがsystemの書き換えやカーネルの署名をチェックするため、カスタムROMをインストールすることができません。

そのため、カスタムROMを使用するにはそのチェック機構をオフにする必要がありますが、チェック機構をオフにすることを「bootloaderをunlockする」と言います。

カスタムリカバリーが配布されている

カスタムリカバリーがないとカスタムROMのインストールがかなり面倒ですので、カスタムリカバリーはほぼ必須です。

BootloaderをUnlockできる機種であれば大体の機種でカスタムリカバリーが存在していますので、そんなに心配しなくて良いです。

カスタムROMが配布されている

カスタムROMがなかったらインストールもへったくれもないよね、というお話です。

広告

カスタムROMをインストールする手順

端末によってかなり差がありますので、一般的な手順のみを載せています。自分の端末について詳しく知りたい方はこのサイトを参考にしてください。

1. bootloaderをunlock (初回のみ)
2. カスタムリカバリーをインストール (基本的に初回のみ)
3. 内部ストレージもしくはmicroSDにカスタムROMとGappsのzipをコピー
4. カスタムリカバリーを起動
5. system, data, cache, Dalvik/ART cacheをwipe
6. カスタムROM, Gappsをflash
7. 起動する

カスタムROMの種類について

非常に多岐に渡っているため、別の記事になっています。

カスタムROMのインストールに向いている端末

個人的にオススメな、カスタムROMをインストールできる端末を紹介します。

参考:わたしが独断と偏見でAndroid端末を紹介する話 (2016年6月) – dev:mordiford

Nexus 5X

カスタムROMの豊富さ、日本国内での入手性の高さ、価格と性能のバランス、今後のアップデート、Factory Imageの存在などを総合的に考えるとNexus 5XがカスタムROMをアレコレするに1番向いていると思います。

OnePlus 3

現状、Snapdragon 820/821採用機で1番カスタムROMが充実しているのがOnePlus 3です。メイン端末としてOnePlus 3 + Resurrection Remixを使っていますが、控えめに言って最高です。優勝です。

Nexus 5 / OnePlus One

どちらもAndroid 7.0 Nougatにはアップデートされないことが決まっていますが、発売から今までカスタムROM界隈で弄られ続けた端末ですので、ノウハウや知見の蓄積というアドバンテージがあります。事実、どちらもNougatの非公式ROMが公開されており、まだまだ遊べる端末になりそうです。

Nexus 6P / OnePlus 2

2015年モデルの中で1番カスタムROM界隈に弄られた端末がこの2つです。手軽に買えるほどには値が下がっていないので上記の機種に比べると買う理由が弱いですが、まだまだ現役の端末です。

Nexus 7 (2012/2013)

価格が安かったこともあり、Nexus 7を持っている方も多いのではないでしょうか。今でこそ型落ちですが、腐ってもNexusで、2012・2013のどちらもNougatの非公式ROMが配布されています。

特に2012の方はスペック不足感が否めませんが、入門・練習台としてならまだまだ使えますよ。

用語集

XDA Developers

http://www.xda-developers.com/

カスタムROM界隈による、カスタムROM界隈のためのサイトで、カスタムROMに限らずAndroid全般に関する様々な情報を入手することができます。特に掲示板の方は世界中からカスタムROM開発者・使用者が集まって情報を交換しており、「困ったらとりあえずここで情報を探せ」的なサイトと言えるでしょう。

4PDA

http://4pda.ru/

ロシア版XDAと言えるサイトです。ロシア語です。

基本的に訪れる必要はありませんが、「xdaで全く盛り上がってない端末が4pdaだとめっちゃ開発が進んでる」みたいなパターンが稀によくあるので、中華端末などを買った場合にはお世話になるかもしれません。

Factory Image

狭義では「GoogleがNexus/Pixelシリーズ向けに配布されているイメージファイル群」のみを指し、広義では「メーカーが配布している公式ROMに関係するファイル全般(Xperiaのftfや、OnePlus/ASUS/Xiaomiあたりが配布しているota.zipファイルなど)」を指します。

Flash

fastbootやカスタムリカバリーからイメージファイルやzipをインストールすることです。カスタムROMを”焼く”という言い回しの語源とされていたりいなかったり。

Wipe

データを消す・フォーマットすることです。

Factory Reset

data以下をwipeすることを指します。Android端末ではdata以下を削除することによって工場出荷状態に戻るため、Factory Resetと呼ばれています。

Dirty Flash

Factory Resetを行わない(=dataを維持したまま)カスタムROMのインストールです。基本的にはROMのアップデートなど、同じ種類のROMで書き替える場合のみ使います。

BL

Bootloader LockまたはBootloader Lockedの略です。

BLU

BootLoader UnlockまたはBootLoader Unlockedの略です。

なぜBootloader Locked → BLという例に倣ってBootloader Unlocked → BUという表記にならないのか、カスタムROM界隈7不思議のうちの1つです。(大嘘)