How to Make the Recovery.img for ZenFone 3

ZenFone3(ZE520KL/ZE552KL/ZS570KL)のrecovery.imgの作り方になります。

設計が基本的に共通な為、ファイルの構成や必要なリソースは同じ場所にあり、
生成方法も同一になります。
間違えると端末が壊れる可能性があります。くれぐれも自己責任で慎重に行ってください。

更新状況を見ていると、ZS570KLの放置感がすごいですね…。( 2018/01/13 現在 )

必要なリソース&環境 :

  • Windows PC とハードディスクにそこそこ容量が必要です。1ROMあたり、5GBは必要になります。
  • 公式サイトから対象のROMをダウンロードする。(ZE520KL / ZE552KL / ZS570KL)
  • ROMをUnpackするためのツールをダウンロード。今回はこちらを利用しました。
  • Java SDKとPythonのインストール。Pythonは3.6.4を利用しました。
  • ROOT化済みのAndroid端末

検証時の環境 :

  • Windows 10 Pro
  • ZenFone 3 ZE520KL ( root化済み ) Android 7

Android 8環境でトライすると、下記のエラーでrecovery.imgは作成できませんでした。
エラーメッセージ: Supporting patching EMMC targets only.
2019/03/08: 確認

作業の流れ

1.公式ROMをダウンロードし解凍します。

このタイミングで、boot.imgが手に入ります。
その他に、system.new.datとsystem.transfer.listを利用します。

2.ツールを使い、system.new.datをUnpackする。

AUTO_TOOL_V2.0.exeを起動し、1)Input Dat For Unpackのメニューを選択します。
指示されたタイミングでファイルを入れて処理を実行します。
完了すると、recovery.imgの作成に必要なリソースや、組み込まれているアプリを確認出来ます。

recovery.imgに必要なリソースは:

  • system.dat_\recovery-from-boot.p ( コマンド実行時に必要 )
  • system.dat_\bin\install-recovery.sh ( 生成コマンドの確認に利用:バージョン毎に異なります )
  • system.dat_\etc\recovery-resource.dat ( コマンド実行時に必要 )

無音カメラを作成する場合は、system.dat_\priv-app\AsusCamera\AsusCamera.apkを加工する。(フォーカス音はアプリ管理)
アプリを加工し、音源を無音化した後に、自己署名を施し、priv-appのapkと差し替えて、再起動でインストール完了。
直接インストールしたり、無理やり有効無効で入れると、再起動時に消えたり、SDカードにアプリからアクセス出来なかったりします。

カメラのシャッター音は、system.dat_\media\audio\ui\camera_click.ogg (シャッター音はOS管理)

端末の設定値は、system.dat_\build.prop
マルチユーザー(例:MAX10人)が必要な方は下記を追記
fw.max_users=10
fw.show_multiuserui=1

3.データ一式を使い、recovery.imgを作成する。

色々なバージョンを作成しているため、初回では無いファイルが見えている場合もあります。
あくまでもイメージとしてご利用ください。

system.dat_\bin\install-recovery.shを開き、recovery.img生成コマンドを確認する。

@ Z012D 14WW83の作業では下記の通りです。
(bootは解凍時のデータを利用 / 他のファイルはフォルダのUnpack時の構成のまま利用しました。)

[ コマンド ]

adb push boot.img /data/local/tmp
adb push system.dat_/recovery-from-boot.p /data/local/tmp
adb push system.dat_/etc/recovery-resource.dat /data/local/tmp

adb shell
cd /data/local/tmp
su
applypatch -b recovery-resource.dat boot.img recovery.img ba600b2ec231af2aaf10012aa6ac3f666377e954 16477436 6f5c49d537983833b1430920346aa3454f3fff1f:recovery-from-boot.p

exit
exit

adb pull /data/local/tmp/recovery.img

作業の途中に、ファイル情報や、データが存在していることを確認するために、
lsコマンドを活用したりします。

SNSでもご購読できます。

コメント

  1. ZE552KL利用者くん より:

    まずはコンテンツ公開本当にありがとうございますm(__)m
    ようやく成功しました!!
    このrecovery.img作成方法はほかのandroidスマホ(ZenFone)でも作成可能なのかも気になりますw

    改めてお疲れ様です。ありがとうございます。
    次のコンテンツも楽しみにしてますw

  2. chikaru eact より:

    コメントありがとうございます。

    実際に見てみないとわかりませんが、install-recovery.shを見てみてどういうコードか判断する感じですね。
    ZenFoneであればほぼ間違いなく同一で、他のAndroidも似たようなコマンドになっているかと推測されます。

    勉強がてらに、一通りのROMをDLし、Unpackしてみて検証するのも面白いかもしれませんね。

  3. 一読者 より:

    始めまして分け合って553KLのjpフォームウェアのrecovery.imgファイルを作り作りたいのですがどうやって手順を踏めばいいのか全然理解できません。ツールとフォームウェアの準備までは理解できたのですがそこから先をどう進めばいいのかわからず質問させていただきました。
    足りない頭にどうかご教授願えないでしょうか。。。ダウングレードまでは出来ます。

    1. 一読者 より:

      追記 コマンドのinstall-recovery.shファイルまではたどり着きました、そこからが理解できないです。。。。。。

コメントを残す