MIUI8のroot化手順 2016年08月21日

超值紅米

とある事情で使ってなかったMI3という中国のXiaomiというメーカーのスマホを引っ張りだして再度セットアップ。せっかくなので中身のOSも最新のものにしておくかと思ってMIUIという見た目iOSのまんまコピーみたいな(もちろんAndroidベースの)OSを最新版のv8に上げた。

で、もう今のスマホの機能を見るとそのままで十分便利なんでJailbreakやroot化ってあんまりやる価値が無く特段やる必要ないかなと思っていたが念のため上記のMI3にはMIUI8のインターナショナル版(アプリなどの構成が中国国内使用を前提としたものではなく東南アジアやインドその他での使用を前提としたもの。ちなみに中国国内仕様のものはGoogleのPlayストアさえ入っていない)でデベロッパー版(安定版と比べるとroot化を簡単に出来たり自由度が広い。。はずだった)を入れておいた。

MIUI8は英語のメニューで使用するので問題はなにもないんだけど、日本語表示やフォントの関係でやっぱりroot化したい要件が出てきたのでじゃあセキュリティアプリからroot化を、、、あ、root化のメニューがない。。。

というわけでMIUI8からどうもセキュリティアプリからroot化できなくなってる模様です。

で、root化の手順自体は至極簡単なんですが、念のため、書いておきます。

Xiaomi Mi Max: Root and install TWRP Recovery (MIUI 8) | Xiaomi Advices

基本的にはこちらのページの手順を実施していきます。Mi Maxでのインストール手順ですが、MI3でも同じだったし、だいたい他の端末でも問題なくこの手順で行けるんじゃないでしょうか。

・前提条件

  1. ADBとfastbootyがPC上で使えるようになっていること(これはAndroidのSDK、Android StudioをPCにインストールしてれば使えると思います)
  2. root化する該当端末のBootloaderをUnlockしておく
  3. SuperSuのzipファイルをダウンロードして端末のストレージに保存しておく
  4. twrpのファイルをダウンロードしてPCに保存しておく
  5. 端末でUSBデバッグを有効にしておく
  6. 端末の充電を70%以上にしておく

・root化手順

  1. twrpのダウンロードしたファイルをrecovery.imgにリネームして、ADB、fastbootの実行ファイルがあるフォルダに保存
  2. ADB、fastbootの実行ファイルがあるフォルダでコマンドラインを開く(該当フォルダをExplorerで開きShiftキーを押しながらそのフォルダ内で右クリック、コマンドウィンドウをここで開くをクリック)
  3. 端末の電源を一度切り、音量DOWNボタンと電源ボタンを両方長押しで電源オン → fastbootモードで起動
  4. fastboot flash recovery recovery.img で上の手順でリネームしたtwrpのカスタムリカバリイメージを端末にflashする
  5. fastboot boot recovery.img twrpのrecovryイメージからブートする
  6. 上の手順で端末のストレージに保存していたSuperSu.zipを適用する
  7. 適用が終了したら再起動して通常のMIUIを起動
  8. Root CheckerなどでRoot化できてるかの確認

とりあえずこれだけでroot化完了ですが、このtwrpの状態のまま放置してると、MIUIのアップデートを受け取った際にアップデートプロセスがOSを再起動した直後twrpでコマンドが通らず沈黙状態になってしまうので標準のrecoveryに戻しておいたほうがいいかと思います。

MIUIのサイトからダウンロードするOSイメージのzipファイルの中にrecovery.imgが含まれてるので同じように端末をfastbootモードにしてPCに接続、fastboot flash recovery recovery.img で再度flashすれば元に戻り、アップデートも詰まりなく終了します。

Xiaomi端末ですが、タブレット代わりにちょっとMi Maxの6.44”という巨大ディスプレイ端末に惹かれています。。

OnePlusのStockROMがfastbootでflashできなかった件 2014年11月12日

Nexus S Fastboot screen

fastbootは最新版にしておいたほうがいい。結論はこれです。近年になってROMイメージのサイズが当初の想定以上に大きくなってきてるんでしょうなあ。どうもfastbootは扱えるファイルサイズがバージョンによって256MBまでとか、512MBまでとかの制限があるみたい。

昨日OnePlusで標準でインストールされていたColorOSを抜いてCyanogenmod11Sを入れたいなあと思っていたので買ったらすぐにCyanogenmod11S(以下CM11S)を入れるべく試してみたんだがどうにもうまくいかない。

CM11SはNexusのCMのインストール方法と違い、OnePlusのサイトで公式のStockROMイメージをDLしたら端末を再起動し

“Volume 上” + “電源ボタン”

でfastbootモードで起動し、それをPC(僕の場合Mac)にUSBで接続し、fastbootコマンドでそれぞれのシステムイメージをflashしていく。

その際に fastboot flash system system.img を実行すると

sending ‘system’ (801285 KB)…
FAILED (remote: data too large)
finished. total time: 1.012s

と何回やっても「remote: データが大きすぎます」と言われて失敗する。調べていくとどうもremoteと表示されている端末やデータの問題ではなく、fastbootコマンドが256MBや512MBを超えるデータの転送をうまくハンドリングできないのが原因らしいことがわかった。

今までの端末はシステムのイメージファイルのサイズが少なかったからこういうのにはひっかからなかったのかもしれないが、最近の端末はシステムイメージがでかいのと、このOnePlusのCM11Sは他のサードパーティのカスタムROMと違い、オフィシャルにGmailなどのプロプライエタリなソフトウェアも権利関係を正式に処理しているおかげでsystem.imgの中に同梱なのだ。だからsystem.imgが大きくなる。多分。

んでいろいろなところからfastbootのファイルをDLして試してみたけど全部ダメで、最終的に公式、正式パスでやるしかないのかと思い、

https://developer.android.com/sdk/index.html

ここからAndroidのSDKのzipファイルをDL。当然Mac用の。そしてそれを解凍し、

adt-bundle-mac-x86_64-20140702/sdk/platform-tools/

からfastbootの実行ファイルを抜き、これを使用してflashしたところなんとか完了。結構迷いました。。。

日本語で

sending ‘system’ (801285 KB)…
FAILED (remote: data too large)
finished. total time: 1.012s

これに対する対処法を書いてるページが少なかったので念のため解説を書いておく次第です。