小米手机4c(Xiaomi mi4c)の予習

先日何気にExpansysを眺めていたら、Xiaomi mi4iが売られていました。Expansysは何故かあまりXiaomiの製品を扱わないし(性能がいいのに安いので、他の製品が売れなくなる?)、2.8万円程度だったので「買いか?」と思いポチリそうになりましたが、その前にバンドなどの下調べをしようと思いました。mi4iはインド向けで(4iのiはインドのi)、FDDのバンドはB3/B7なのでドコモ(1/3/19/21/28)のB3で使えそうです。

もう少し調べると、その後中国国内市場向けにmi4iを若干アップグレードしたmi4c(4cのcはチャイナのc)があることが分かりました。見た目はほぼ同じですが、違いはFDD 1/3/7(FDD 3/7)、Snapdragon 808 Hexa-Core 1.8 GHz(Snapdragon 615 Octa-Core 1.7 GHz)、GPU Adreno 418(Adreno 405)、カメラセンサー Sony IMX258(Sony IMX214)、急速充電対応USB Type C端子(マイクロUSB端子)というとこです(※括弧内がMi4i)。ドコモのB1/3の二つのバンドに対応しているのがいいですし、RAM3GB・ストレージ32GBという上位機種もあります。

XiaomiはMIUIというAndroidベースにiOS風のインターフェイスを搭載した独自OSを使っています。MIUIはXDAで広まりましたが、そこからXiaomiという巨大企業が誕生したことは感慨深いです。さて、mi4iはインドでも発売されているのでグローバル版ROM(多言語、Google Play Store入り)と中国版ROM(英語・中国語のみ、Google Play Storeなし)がありますが、Mi4cは今のところ中国国内でしか販売されてませんので中国版ROMしかありません。ただ、もともとXiaomiは日本をターゲットにしていませんので、MIUIに日本語リソースはほとんど入っていないので、日本語で使いたい場合はどちらでも大差ありません。
xiaomi-mi4c

ということで、2月が誕生月なので1月中にmi4cの3GB/32GB版を中華リセラーショップから買うことにしました。中華リセラーはExpansysのような迅速な対応はしてくれませんので、1カ月後くらいには届けばいいやくらいの気持ちが必要です。DHLの追加料金がバカ高かったりしますが、単なる安心料になる場合もありますので、送料無料の郵便を選択しました。本体US$ 235 + 輸送保険US$ 3 + Paypal手数料US$ 7.36で〆てUS$ 245.36、大体3万円というところでしょうか。Expansysでmi4iの2GB/32GB版を買うのと大差ありません。かなり安いのは(とは言え、もともとの定価も安いのですが)mi5やRedmi Note 3、Note 3 Proが発表されたため、リセラーの在庫処分だと思われます。日本ではRedmi Note系が人気のようですが、miシリーズがフラグシップ端末で、Redmiシリーズは廉価版、Noteは5.5インチ以上なので、私の使用にはmiシリーズが合っていると思います。

待っている間に予習をしておきます。MIUIには安定版・開発者向け版(root入り最新版)があり、それぞれグローバル版と中国版があり、4種類あります。1月に発表され話題というか議論を巻き起こしたのが、今後最新の開発者向け版ROMをインストールした場合、bootloaderがロックされてしまいます。今後発売される新機種もbootloaderをロックした状態で発売されます。恐らくそのうちmi4cのような旧機種向けの安定版ROMのbootloaderもロックされると思われます。(最新安定版の7.1.6.0はロックされている模様、ややこしいですが一つ前の7.0.16.0はロックされていない模様)Xiaomiのスマホが人気だったのはbootloaderがアンロックされた状態で発売されていたため、いろいろ簡単に弄ることができたこともあります。そのため、中国の海外向けリセラーが独自に多言語化したり、カスタムリカバリーに入れ替えたり、Google Play Storeを入れたりして売っていましたが、中にはブロートウェアやマルウェアを入れて売る悪質業者も現れました。今回のbootloaderのロックはそのようなリセラーの不正行為を撲滅するためのものです。

開発者向け版はかなりの頻度でアップデートされます。最新中の最新を使いたい人やrootを自分で取るのが面倒な人が使っていました。今回の変更で、ビルトインされているroot機能はbootloaderがアンロックされている場合にのみ使えるように変更されました。逆に言えば、bootloaderをアンロックできる人以外、開発者向け版をインストールするメリットがなくなったと言えます。

Xiaomiはもちろんbootloaderをアンロックする手立てを用意しましたが、これが最悪でした。iPhoneのApple IDのように、XiaomiにもMiアカウントと呼ばれるユーザー個々のアカウントがあり(作り)、それを使ってMi Cloudというクラウドサービスを使うことができます。まず、bootloaderをアンロックする申請をウェブ上でMiアカウントを使ってしなければなりません。そのサイトが始めは中国語のみでした(今は英語版サイトもあり)。Miアカウント名、電話番号、アンロックしたい理由を入力して申請は終了です。早ければ3~21日程度でアンロックをするためのコードがSMSで送られてきます。つまり、申請してもすぐにはアンロックできないのです。最悪申請が却下される場合もあります。更に訳が分からないのが、Xiaomiが運営するユーザー掲示板での活動が多いユーザーはすぐに許可されるとか、Mi Cloudの利用が少ないので申請却下とか、などなど。Xiaomiとしては実際に端末を使用しているユーザーとリセラーを区別したいのでしょうが、少々やり過ぎだと思います。bootloaderがロックされていない安定版を使っていても、今後OTAのアップデートなどで知らない間にbootloaderがロックされてしまう人が出てくるでしょう。

mi4cの予習に話を戻しますが、mi4cには既にcm12.1やcm13など日本語を含めた本当の意味での多言語化されたカスタムROMあり、TWRPなどでフラッシュすることができます。bootloaderは基本的に通常起動後処理をリカバリープログラムかAndroidに引き渡すだけなので、バージョンが古くてもほとんど支障はありません。ただ、公式のROMの中には通信を制御する部分(HTCやNexusで言うところのRadio ROM)があり、この部分は新しいものであって欲しいわけです。Xiaomiが珍しいのは、ほとんどの企業が提供しているようなリカバリーモードで更新できる書式のROMとは別に、bootloaderからfastboot flashを使って更新できる形式のfastboot ROMも公開しています。つまり、ROMの中身は4種類(mi4cはグローバル版なし)あり、ROMの書式は2種類あることになります。

早速fastboot ROMをダウンロードして覗いてみると、中身はNexusの工場出荷時イメージ(factory image)に近い形をしており、それぞれのパーティションごとのイメージとそれをフラッシュするためのバッチファイルやシェルスクリプトも入っています。flash_all.bat(ファイル名までNexusと同じ…)の中身は、


# fastboot %* getvar product 2>&1 | findstr /r /c:"^product: *MSM8992$" || echo Missmatching image and device
# fastboot %* getvar product 2>&1 | findstr /r /c:"^product: *MSM8992$" || exit /B 1
# fastboot %* flash pmic %~dp0images\pmic.mbn
# fastboot %* flash pmicbak %~dp0images\pmic.mbn
# fastboot %* flash hyp %~dp0images\hyp.mbn
# fastboot %* flash hypbak %~dp0images\hyp.mbn
# fastboot %* flash tz %~dp0images\tz.mbn
# fastboot %* flash tzbak %~dp0images\tz.mbn
# fastboot %* flash sbl1 %~dp0images\sbl1.mbn
# fastboot %* flash sbl1bak %~dp0images\sbl1.mbn
# fastboot %* flash sdi %~dp0images\sdi.mbn
# fastboot %* flash rpm %~dp0images\rpm.mbn
# fastboot %* flash rpmbak %~dp0images\rpm.mbn
# fastboot %* flash aboot %~dp0images\emmc_appsboot.mbn
# fastboot %* flash abootbak %~dp0images\emmc_appsboot.mbn
# fastboot %* erase boot
# fastboot %* erase sec
# fastboot %* flash misc %~dp0images\misc.img
# fastboot %* flash modem %~dp0images\NON-HLOS.bin
# fastboot %* flash cache %~dp0images\cache.img
# fastboot %* flash userdata %~dp0images\userdata.img
# fastboot %* flash system %~dp0images\system.img
# fastboot %* flash recovery %~dp0images\recovery.img
# fastboot %* flash boot %~dp0images\boot.img
# fastboot %* flash bluetooth %~dp0images\BTFM.bin
# fastboot %* flash logo %~dp0images\logo.img
# fastboot %* flash bk2 %~dp0images\bk2.img
# fastboot %* flash cust %~dp0images\cust.img
# fastboot %* reboot

となっています。1~2行目は端末から製品名を読み込みMSM8992であれば続行、でなければ中断。3~15行目がbootloaderの書き換え、16~28行目まではbootloader起動後に必要なイメージです。つまり3~15行目を実行しなければ、bootloader以外の部分を書き換えることができます。ただし、kernelブート時にbootloaderのバージョンをチェックして、起動できなくしているかもしれません。こんなトラップはカスタムROMには入っていないので、まったく問題ないと思われます。

購入後の手順としては、

  1. MIUIを起動させず速攻bootloaderに入り、ドライバーをインストール
  2. TWRPをfastboot bootで起動し、ドライバーをインストール(まだTWRPは焼かない)
  3. TWRPでEPS領域をバックアップ(Fomaプラス化の可能性があるので)し、PCにコピー
  4. ついでにcmやSuperSUやGappsのインストールzipファイルをPCから内部ストレージにコピー
  5. bootloaderに再度入り、まだbootloaderがロックされていないlibra_images_V7.0.16.0.LXKCNCI_20151104.0000.4_5.1_cn_e1b2908d1bのイメージを使って、bootloaderがロックされていない安定版システムにアップデート(リセラーがROMを書き換えている可能性もあるので、きれいにする)userdataは書き換えない(恐らくリカバリーからインストールするよりも安全)
  6. このときリブートさせず、同時にTWRPをインストール
  7. TWRPに入り、cmやSuperSUやGappsをインストール

で、めでたく日本語が使えるcm入りのmi4cの完成。XiaomiのタッチキーはGalaxyのようにタスク・ホーム・戻るの順なので、7の際にキーマップを慣れている戻る・ホーム・タスクの順に変更してもいいかもしれない。

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


%d bloggers like this: