【復習】ドジっ子のためのリソース弄りの注意点

某イケメンブロガーのサイトで、こんな書き込みを見た。
『GPSを使うとダウンロードマークとGPSマークが交互に表示』
んで、何が起こっていたのかというと
これ、WinMergeってツールで、新旧framework-res.apkにはいっているpublic.xmlというファイルを比較ましたの図ですw
左が旧で右が新なんだけど、
左の(1)の”stat_sys_gps_on”には id=”0x0108047c” と書いてあり、右の(2)の”stat_sys_gps_on”には id=”0x01080482″ と書いてますな。
このIDが、リソースIDと呼ばれるもので、0x01・・・で始まるのは、framework-res.apkに含まれとります。
で、問題の右の(3)ですが”stat_sys_download_anim1″に、id=”0x0108047c” と書いとります。
だいたい想像がつきましたか?
左のソースをそのまま新しい右側に上書きしちゃうと、『GPSを使うとダウンロードマークとGPSマークが交互に表示』されるわけです。
なので、smaliファイルを弄るときも、プログラム中に 0x0108047c とか埋め込まれてますので、注意しないとダメです。
apktoolとか使ってデコードして修正する際に、res/values/の中にpublic.xmlってのが入ってますから、ここは何よりも最初に見ておくことをお勧めします。
また、心に余裕があるときに、【復習】弄るためのツールの使い方でもかきますかw
-
前の記事
arc用公式ICSでシステムアプリがいっぱい入ってる件(回想) 2012.06.28
-
次の記事
Xperia acroがやって来た ヤア!ヤア!ヤア!(借り物ですけどw) 2012.07.23
コメントを書く