Cox Cafe

XperiaやMVNOの情報など

格安SIMを使いませんか?

IIJmio使う人は紹介コード「694 8329 6496 4226」を使うか、 こちらから是非どうぞ。
2ヶ月間高速データ量が10%増量されます。

[Android][rooted]Xperia acro HD SO-03Dのframework-res.apkとSystemUI.apkの弄り方

2012/12/15

Android端末のrootを取ったら色々弄りたくなるのが人の性。例えば下の画像のように画面右上の時計に日付を表示して2段化してみたいと思った際、framework-res.apkとSystemUI.apkを弄る必要がありますが、そのために必要なデコンパイルとコンパイルの方法を紹介します。

準備

まずは必要なもの。

  • APK Multi-Tool
  • system/framework/framework-res.apk
  • system/app/SystemUI.apk
  • system/framework/SemcGenericUxpRes.apk

とりあえずこれを用意します。APK Multi-Toolは最新版のもので良いと思います。2012年12月3日時点ではVersion 1.0.11が最新です。

インストール

APK Multi-Toolは自分が使いやすい適当な場所に解凍すればいいです。

framework-res.apk、SystemUI.apk、SemcGenericUxpRes.apkの3つは、とりあえずC:\Users\******(*は各人のユーザー名)にコピペします。

次にコマンドプロンプトを起動し、それぞれ以下のように入力して3つともインストールを行います。

apktool if framework-res.apk

次にAPK Multi-ToolのSetup.batを起動し、Please make your decision:と出てきたら3とEnterキーを押します。

続行するには何かキーを押してくださいと出てきたら、何かキーを押してから終了。

デコンパイル

APK Multi-Toolに色々と新たなフォルダが追加されているので、place-apk-here-for-moddingフォルダにframework-res.apkとSystemUI.apkをコピペします。

コピペしたらAPK Multi-ToolのScript.batを起動し、続行するには何かキーを押してくださいと出たら何かキーを押します。

色々と項目が出てくるので、まずはSelect Compression level for apk'sの横の数字を入力してEnterキー。21辺りだと思います。そして新たな項目が出てきたら0を押してEnterキー。

続いてSet current projectの横の数字を入力してEnterキー。24辺りだと思います。1から順番にframework-res.apkなどが表示されるので、デコンパイルしたいものの数字を選んでEnterキー。

そしていよいよデコンパイルです。Decompile apkの横の数字を入力してEnterキーで、デコンパイルが始まります。しばらく待ってPlease make your decision:に戻ればデコンパイル完了。

編集

framework-res.apkの場合

APK Multi-Toolのprojectsフォルダを開くと、先ほどデコンパイルしたものが展開されています。ここではframework-res.apkの場合。

フォルダを開くとあるapktool.ymlを開きます。すると以下のような記述になっていると思うので、

version: 1.5.0.5a056e3
apkFileName: framework-res.apk
isFrameworkApk: true
usesFramework:
  ids:
  - 2
sdkInfo:
  minSdkVersion: '15'
  targetSdkVersion: '15'

以下の部分を削除します。

usesFramework:
  ids:
  - 2

次にres/values/styles.xmlを開きます。以下の2行がバラバラにあるので検索し、

@com.sonyericsson.uxp:drawable/semc_bg
@com.sonyericsson.uxp:drawable/semc_bg_bright

それぞれ以下のように書き換えます。

@color/black
@color/white

これを保存して準備完了。最低この2つの手順を踏まないとコンパイルで失敗してしまうのです。

あとは、各自変更したい部分の変更を済ませてください。

SystemUI.apkの場合

res/values/arrays.xmlを開きます。以下の記述があるので、

<reference-array name="shutdown_reboot_options">
    <item>@string/reboot</item>
</reference-array>

以下のように変更。

<array name="shutdown_reboot_options">
    <item>@string/reboot</item>
</array>

これで準備完了。この手順を踏まないとコンパイルで失敗します。ただし、古いAPK Multi-Toolではこの手順は不要かも知れません。要は、reference-arrayとなっているとエラーが出るのでarrayにするのですが、古いやつだと最初からarrayになっているからです。

あとは、各自変更したい部分の変更を済ませてください。

コンパイル

最後にコンパイル。APK Multi-Toolに戻ってSet current projectでコンパイルしたいファイルを選択し、Compile System APK filesの横の数字を入力してEnterキー。11辺りでしょうか。

しばらくすると何か聞かれるので、yを入力してEnterキー。するとずらーっと何やら出てきます。

続行するには何かキーを押してくださいと出てきますが、まだ押さない。押さない。

一旦APK Multi-Toolのフォルダを見ると、keepというフォルダが出来ているはずなので開きます。そして以下をとりあえず削除。

  • resources.arsc
  • classes.dex(framework-res.apkの場合は無い)
  • resフォルダ

削除したら戻って何かキーを押します。元の画面に戻ったらコンパイル完了。place-apk-here-for-moddingフォルダにSystem_framework-res.apkSystem_SystemUI.apkが出来ているので、framework-res.apkSystemUI.apkにリネームして全て完了です。

おまけ

2chの該当スレで以下の内容のCWM用zipを配布してます。良かったらどうぞ。SO-03D(6.1.F.0.106)用です。

2種類入っているので、解凍して必要な方をインストールして下さい。

  • 14トグルスイッチ(明るさ調整スライドバー付き)
  • バッテリー100段階化
  • 時計2段化

 

ダウンロード

ad

-主要エントリー
-, ,