2013/10/25

備忘録 -framework系アプリ改変-


【改変環境】
Windows 7 Pro 64bit
Java 7
Android SDK
Cygwin
apktool v2.0.0-Beta5
7-zip
zipalign.exe

【オリジナル準備】
$ adb pull /system/framework/framework-res.apk
$ adb pull /system/framework/SemcGenericUxpRes.apk

【リソースインストール】
$ apktool if framework-res.apk -t AX
$ apktool if SemcGenericUxpRes.apk -t AX

【デコンパイル】
$ apktool d -t AX framework-res.apk -o axfr(なんでもいい)
$ apktool d -t AX SemcGenericUxpRes.apk -o axsgur(なんでもいい)

中身入換などなど...

【framework-res.apkリコンパイル】
$ apktool b axfr -o reframework-res.apk
オリジナルからMETA-INF展開
$ 7z x -tzip framework-res.apk META-INF
リコンパイルしたやつに追加
$ 7z a -tzip reframework-res.apk META-INF
最適化(必要かどうかは不明)
$ zipalign -v 4 reframework-res.apk framework-res.apk
※オリジナルはframework-res_ori.apkとかにリネームしておく。
テーマ適用可能

【SemcGenericUxpRes.apkリコンパイル】
http://forum.xda-developers.com/showthread.php?p=39143524
ここのやり方を参考に
axsgur/res/valuesの中にbools.xml新規作成
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <bool name="BDFreak">true</bool>
</resources>
と書いとく。
axsgur/res/values/public.xmlを開いてリソースID追加
    <public type="dimen" name="semc_tab_indicator_icon_max_height" id="0x02070016" />
    <public type="bool" name="BDFreak" id="0x02080000" />
    <public type="style" name="SEMCWidget" id="0x02090000" />
太字のやつ
$ apktool b axsgur -o reSemcGenericUxpRes.apk
オリジナルからMETA-INF展開
$ 7z x -tzip SemcGenericUxpRes.apk META-INF
リコンパイルしたやつに追加
$ 7z a -tzip reSemcGenericUxpRes.apk META-INF
最適化(これまた必要かどうかは不明)
$ zipalign -v 4 reSemcGenericUxpRes.apk SemcGenericUxpRes.apk
※オリジナルはSemcGenericUxpRes_ori.apkとかにリネームしておく。
ただテーマ適用不可に・・・

zip作ってれっつ焼き焼き
オリジナルに戻すzipも一緒に作っておけば安心

0 件のコメント:

コメントを投稿