今更ながらカスタムロムを入れてみる。その１


二年ほノーマルROMで使ってきたAndroid携帯のネットワークチップが逝かれてしまった。
なんとか復帰しないかの試しの一環でカスタムロムをいれてAndroidのversionを上げてみた経過記録

#機材
## 端末
- Xiaomi Redmi Note 3 Pro
	- かれこれ二年・・・と思ってたらまだ1年半ぐらいしか使っていなかった。実際のところ後1年は使いたかった。
	- SPEC的にコストパフォーマンスが非常に良かった端末機材
		- SoC:SD650 Mem:3GB
	- この後継機のRN4はMediaTekのSoCになっちゃったりしてちょい残念。
		- この記事時点でRN5(Pro)が発表されたがSoCがSD635（物によってはSD625) でちょいがっかりSD660なら脊髄反射で後継でぽっちたんだけどなぁ・・まぁ多分RN5買うんだろうなぁとおもうけど（コスト的な問題で）
	- 不調になるまでは使用開始時にFactoryResetはかけたけど購入時のGlobal版MIUIをオンラインアップデートで7->8->9と上げていったもの。Root取るどころかBootLoaderのアンロックすらしていない状態。
	- 外部メモリとして32GBのMicroSDが刺さっている。
## 作業環境など
- MacBookPro2017
	- USB-Cなので微妙に不便に思ってたけどだんだんなれてきたｗ
	- OSはHighSierra状態
	- USB-CからいろんなUSB/SDとかさせるポートリプリこんな奴![HooToo_USB-C_Hub.jpg](https://qiita-image-store.s3.amazonaws.com/0/102608/66cb2ad6-42ac-b29e-54aa-5f332cd3500a.jpeg "HooToo_USB-C_Hub.jpg")
		- 非常に便利
	- VirtualBox:アプリなんだけど、BootLoaderのUnlock時にWindowsを利用するために使用。
		- modernIE(https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/)のイメージからWindowsを利用する。使用したのはEdgeのイメージ
		- VirtualBox経由でゲストマシンのWIn10がUSB機器を認識させるところまではセットアップしておく。
		- メモリは少し多めに設定しておいたほうがストレスが減る。
	- ホストのMacOS上でadb/fastbootが使える環境を設定しておく
		- ここどうやって整えたのかど忘れした。HomeBrew経由で入れたのか、Android開発環境を入れたのか、GenymotionとかAndyを入れた時に一緒に入った可能性も微レ存・・・・

## 対象端末の状況
- Android 自体は普通に起動する状態
	- Android 6.1.2あたりが動作していた
	- 基本はファクトリから出荷されたMIUIをアップデートしたもの
	- SIMを介したLTE/3G経由の通信はできている状態（データ通信も出来ている）
	- Wifi/BlueToothはOS上から設定を変更しても電波自体を取得しない（Wifiに関しては有効設定変更すら出来ない状態）＞チップセットかモジュールが飛んだと判断
		- 通信ができなくなったのは本当に突然。BTで音楽を聞いて歩いていたら突然認識しなくなった。
	- 現象発生後、ファクトリリセットもかけてみたが改善せず。

##事前作業
ファクトリリセットをかけたことでとりあえず内部的には購入して諸々アップデートをかけた後の状態に戻ったと判断。
ということでカスタムROMを焼く準備をしていく。
###BootLoaderのアンロック
Xiaomiの端末は企業の方針なのかBootloaderの書き換えの部分にLockがかかっているらしい。ショップが勝手にROMを書き換えたりして販売することに対しての保護じゃないかといわれてる。カスタムしたりRootとったりする時にこれが若干煩わしい＆書き換え用のツールがWindowsアプリとして配布されているのでMac/Linuxばっかり使っている身としては煩わしい。
とはいえ、MSが配布してくれている仮想環境上で動作するWindowsと、そのなかのGuestOSがUSB機器としてAndroid端末を認識さえしてくれればUnlock自体はWindowsの作業マシンで実施することと同じ。
なので過去のアンロック作業をされている方の記事を読んで順を追って作業を進めれば問題ない
下記がアンロック申請〜アンロック作業概要

1. Xiaomi社が用意している「MIUI」のユーザ登録(https://account.xiaomi.com/pass/register?) を行う
	- なんかメールアドレスでも登録ができるらしい・・・
	- ちゃんと読み込まなかったので電話番号で登録してしまった・・まぁいいか。
	- どっちにしてもBangGoodとかGearBestとかにも電話番号登録しちゃってるし（苦笑）
	- SMSとかメールで認証がくるのでちゃんとそこまで完了しておくこと。

2. アンロック用のページ(http://en.miui.com/unlock/)に移動　
	- ”Unlock Now”をクリックするとまたなんか入力する画面(「完善帳号」というタイトルのページ)になる。ここはユーザ名を登録するページらしい。
	-　ここの意味が実際に登録完了するまでわからなかったんだけど、どうもユーザアカウントを上記で登録した後に、それ以外の端末情報なんかを管理するためのDBを作成しているっぽい。
	- 記入欄に希望するニックネームを入力して左のボタンを押せばニックネームが登録されてユーザ情報ページみたいなところに飛ぶ（ひょっとしたらフォーラムページみたいなのに飛んじゃうかも）

4. アンロック端末にてsetting>Additional setting>Developer options>Mi Unlock status
から「Add account and device」を押しておく

5. 再度、アンロック用のページ(http://en.miui.com/unlock/)に移動
	- この作業はアンロックを行う端末で行う必要がある
	- ここでも結局電話番号を入力することになる（これは不可避）
	- また認証のSMSが飛んでくるのでSMSに記載してある認証コード（Two-Facter認証みたいな文字列）を認証ページにて入力
	- 「Submitted.Please wait for the review.」と表示されれば、ブートローダーアンロックの申請は一旦完了。
6. アンロック申請が通ったよっていうSMSが飛んでくるまで待機
	- 2018/05時点では30分後ぐらいにアンロック申請許可のSMSが飛んでくる
5. 再度、アンロック用のページ(http://en.miui.com/unlock/)に移動
	- ログイン後から”Unlock now”クリック
	- 遷移したページで”Download Mi Unlock”をクリックするとUnlock用のツールがDLされる。
6. 72時間待つｗ
	- つまり申請が通った時点ではまだ申請が通過しただけ。
	- このあと申請した内容がMIUIユーザ登録ページ内のDBへの反映には72時間（約三日）待つ必要がある模様 
	- いっそ我慢して４日間忘れ去ったほうが精神的によろしい。

###72時間後
やっとBootLoaderがアンロックできる

1. VirtualBoxでModernIEを起動し、アンロック申請完了後にDLしたファイルを解凍、「miflash_unlock.exe」を起動
2. 使用許諾にAgreeし、次の画面でMIUIアカウント情報でログイン
3. スマホ端末をFASTBOOTの状態（電源OFF>電源＋音量ダウンボタン押し続け）にしてからUSBケーブルでPCに接続。
4. VirtualBOXのUSBの機器上のリストで端末が認識されていることを確認
5. しばらく待っていると（もしくはUSBケーブルを抜いたり刺したりしていると）アンロックツール上の画面に”Phone Connected” と変化する
6. ツールの最下部に”Unlock”のボタンがあるので、押し下げ
7. 作業状況を0%~100%で表示してくれる。
8. Unlocked Sucessfully "の文字が出たらUnlock完了


画像がないとわかりにくいかも
先達のページが”Xiaomi Bootloader Unlock” で山程出てくるから参考にしよう。