TWRP公式サポートされてないAndroid端末でシステムインストールした話

TWRPはandroidのroot化に関連して注目されることが多いですね。
公式サポートされてないだけで地獄と化すことを私は知りませんでした。
以下は丸4日に渡る私の悪戦苦闘の記録です。あくまで参考程度に、このような操作は自己責任で行ってください。
(バックアップはあらかじめ取っておこう。特にブートローダーをアンロックしてない場合は初期化不可避。)

---------------------------スポンサー---------------------------


--------------------------------------------------------------------


ちなみに私が今回使用したのはASUS Zenfone Live (L1)。新品でも1万円代で、とても良い仕事をしてくれるけれど、TWRP公式サポートしてない機種です。



システムインストールは、要するにユーザーアプリを/system以下に入れれば良い(システムをいじって動かなくしてしまったりセキュリティ上信頼できないアプリを入れるのを防ぐため、普段はロックがかかっています)から、流れとしては、

1、PCにadb・fastbootを導入しておく
(リンク先はwindows用。macの場合android studioアプリをインストールし、パスをターミナルアプリのコマンドラインから
export PATH=$PATH:/Users/<自分のユーザー名のフォルダ>/Library/Android/sdk/platform-tools
することでadbが入る)
2、ブートローダーのアンロック
3、TWRPをrecoveryへ焼く(ちなみにTWRPの言語は設定から変更可能)
4、TWRPファイルマネージャーで/system以下へのファイル移動

の、つもりだった。実際どうだったかは以下の通り。



1、そのまま。DLしてきてディレクトリにパスを通す。検索すれば良い解説ページがたくさんある。

2、
まずブートローダーのアンロックは避けられなかったです。
非公式の方法だとアンロック解除できる方法もあるらしいけど、自分は公式の方で行く。なぜなら変ないじり方されないだろうし安心だから。まあ当然サポートは切れるけど。
ASUSの公式サイト
https://www.asus.com/ph/Phone/ZenFone-Live-L1/HelpDesk_Download/
からUnlock Device App: Unlock boot loader (.apkだったはず)をとってきてアンロック。


3、
ここでつまる。
普通TWRPは公式サイトからimageファイルをとってきてrecovery領域に焼くところが、公式サポートされてない場合はこのimageを有志の人が作ってネットに上げてるのを期待して探すしかない、もう大変。
(ただしroot化端末ならTWRP公式ページからimageを作成できる)
imageだけとってきて自分のabdコマンドで焼いてもいいし、youtubeとか見るとバッチファイル(.bat)をwindows端末から実行するだけでも一通りやってくれるように自動化されているものもあるようだ。

<失敗例1:TWRPが起動しない>
コマンドラインにて、
fastboot flash recovery twrp.img
は成功するが、
fastboot boot twrp.img
のように起動しようとすると
Sending 'boot.img' (22560 KB)                      OKAY [  0.711s]
Booting                                            FAILED (remote: 'dtb not found')

とエラーを吐く。

<失敗例2:TWRPをrecoveryに焼いたのにrecoveryを起動するとAndroid OSが通常起動>
なんでかは結局分からなかった。imageがそもそもTWRPでなかったのだろうか。

<失敗例3:TWRPが入るが/dataがマウントされず内部ストレージが見えない>
これはimageが最適とする機種が厳密には手元の機種とは違うが似ている、という場合に多かった(違う機種のimageを入れるのは危険なので真似しないに越したことはない)。
自分の場合には、文鎮化こそ起きなかったが、いくつか不可解な点ができた。
・google play store がたまに真っ白になる(一旦フォーカスを外せば通常通り起動)
・play storeで入れたアプリさえも、ものによって変な場所(/data/data 以下)にアプリケーション参照元のフォルダができる
・ZenUI Launcherが頻繁(play storeでインストールするタイミング?)に停止
ひとまずTWRPが起動して嬉しかったのだが、マウントの項目にdataがなく、dataがマウントできない(表示されない)。
右下の「三」みたいなマークはlogなんだけど、よく見ると
「Dataの復号に失敗しました。デフォルトのパスワードで復号できません。dataの初期化が必要です。」というメッセージに続いて「Unable to mount storage」などと書かれている。

<失敗例4:TWRPから/dataがマウントできるが肝心のAndroid OSが起動しない>
ちなみに失敗例3で、言われた通りTWRPメニューからwipe(消去)で/dataをwipeすると、dataはマウントされたが、今度は通常起動しなかった(長すぎて途中で切った)。
再起動をタップして三十分ほど待っても起動しない。「zenfone」で丸がポンポンずっと飛んでる。仕方がないから電源長押しで一瞬電源落ちた瞬間に音量-ボタンも同時に長押ししてTWRP起動して、そこから再起動項目→電源オフ。
bootloaderやTWRPは動くのがまだ救いだが。
対処法として、PCの方から「fastboot -w reboot」、dataとcacheをwipeすると、まあまあ待ったら今度は起動した。
しかし、今度はTWRPがつかない。recovery起動しても本体が起動してしまう。
やっぱり他端末のを使うと、Android側とTWRP側でdataの形式でも違うんだろうか。
自分もシステムに関してはかなりの素人なので、正直何が起こったのか未だにちゃんとわかってないのが怖い。

<成功?例>
唯一ののぞみは、失敗例3の、TWRPが起動するが/dataがマウントできない場合だ。
この場合、systemはマウントできる。
そこで、通常OSもしくはPCにて、Android内部のアプリのフォルダをsdcardに移動
→TWRP起動、systemとexternal_sdをマウント
→TWRP拡張機能から/external_sdのデータを/system/priv_appに移動
で、なんとかできた。


まあ、私の場合は失敗例3の段階から/data/data以下にアプリのフォルダが行っちゃうようになってたので、そこからファイルを取り出す段階で、結局root化しないとダメでしたが。。
(root化の際も同様に、supersuやmagiskのzipファイルをsdcardにダウンロードして、TWRPのインストール項目から入れることができました。)

コメント

このブログの人気の投稿

旧バージョンのiMovieを入れる方法

[UTAU] Garagebandで作ったボーカルメロディーをUTAUに読ませる