Sponsored links

Xperia A SO-04E [ZR C5503]Lollipop Deodex 化の準備

数日前に Xperia A SO-04E [ZR C5503]を Lollipop 根付き化した記事を書きましたが、その際に気になったのが、Systemディレクトリ内に odex ディレクトリと odex.sqsh と呼ばれるファイルが存在していたこと。同ディレクトリ/ファイルは、その他 Lollipop デバイスでは見たことがなかった。少し調べてみると、SONY 独自の仕組みとなっているようで、通常であればodexファイルは、System/app/アプリ名/ ,/priv-app/アプリ名/armディレクトリに格納している。Sony の Lollipop では それらodexファイルが、system/odex/アプリ名/arm/odexファイルへのシンボリックリンクとなっている模様。
Deodex化するにはまずこれらリンクを置き換える必要があるとのこと。

source:XDA

以下内容は、文鎮化する可能性もありますので、自己責任にてお願いします。

今回は、odexファイルをsystem/app/アプリ名/arm内に入れ込む作業まで、つまり odex ROM 化まで、deodex化(後日記述済み)まではしませんのであしからず。

手順

上記XDAサイトより SquashFS Tools なるツールをダウンロードしてくる(windows/lunuxで動作OK)。また、PCに 10.6.A.0.454 system を ADB pull しておく。

作業環境とデバイスの準備

  • OS 5.0.2 ,FW 10.6.A.0.454,Rooted
  • Google Play から Busybox インストールしておく
  • PC Windows7 android-SDK install済み
Sponsored links

SquashFS Tools を使う

解凍してできた squashfs_tools フォルダに adb pull してきた system/odex.sqsh を 保存しておく。同フォルダ内でシフトを押しながら右クリックして”コマンドウィンドウをここで開く”を選択すると コマンドウィンドウが開く。

下記をコマンド

unsquashfs -no-xattrs odex.sqsh

完了したら ”squashfs_tools”フォルダに ”squashfs-root”フォルダが追加され以下に

  • app
  • framework
  • priv-app
  • vendor

が作成されそれらのフォルダの中に、/アプリ名/アプリ名.odex のみが展開される。それらフォルダを ”system”フォルダを新たに作成し、その中に保存する。
files

odex ファイルを端末に入れ込む

作成したsystemフォルダをsdcardに保存しておき以下コマンド。

adb shell
su
mount -o rw,remount /system

systemをマウントする

cp -R /sdcard/system data/local/tmp/

Sdcardのsystemディレクトリ以下をdata/local/tmp/にペーストする

chmod -R 755 data/local/tmp/system

data/local/tmp/system以下のディレクトリのフォルダ/ファイル全てのパーミッションを 755 に変更する

busybox find data/local/tmp/system/ -name *.odex -exec chmod 644 {} \;

find コマンドを使用し、data/local/tmp/system以下にある .odex という名前の付くファイルの全てを パーミッション 644 に変更する

cp -a -p /data/local/tmp/system/* /system/

/data/local/tmp/system以下のディレクトリとファイルをすべて system以下にパーミッションを維持したままペーストする

busybox mv /system/odex.sqsh /system/odex.sqsh.bac

/system/odex.sqsh をリネーム

reboot

data/local/tmp/内にあるsystemディレクトリを削除して完了というところでしょうか。ファイルマネージャーで確認すると”odex”ディレクトリがなくなって、odex.sqsh がodex.sqsh.bac になっていることが確認できる。起動しているということは、odexファイルは書き換わっている状態と思われるがいかがでしょう。

以上 odex ROM 化 完了。

LBD2.5 を使用して アプリを deodex化して導入するもよし、色々試されてはいかがでしょう。

※追記2015/06/19 再起動したら、一度消えていたodexディレクトリが復活している模様。boot もしくは system イメージの問題?わかりません。

(Visited 4,101 times, 1 visits today)
Pocket
LINEで送る
LinkedIn にシェア

Sponsored links

Leave a Comment