「Xperia arc」の純正バッテリー表示を100段階(パーセント)表示に変更
「Xperia arc」の純正バッテリー表示(アイコン)は7段階(だったと思う)で残量が直感的に分かりにくい事から、パーセント表示できるアプリケーションを導入・常駐させている。これだと画面上部のステータスバーにバッテリー表示が2つ存在する事になり、無駄であると同時に余計なメモリ(些細ではあるが)を消費してしまいナンセンス。そこで、純正バッテリー表示を差し替えてしまうと言うのが今回の目的。
Android端末がroot化されていれば、デフォルトの「framework-res.apk」(簡単に言えば、Android端末上に画像を表示させる為の物で、この場合はAndroid OSで用いる「framework-res.apk」を指す)の書き換え(XMLファイル編集やアイコン画像であるPNGファイルの修正)で可能になるのだが、「Apk Manager」(http://developer.android.com/index.html)や「UOT Kitchen」(http://uot.dakra.lt/kitchen/)を使って一から作成するのは面倒(自作する場合は、この2つのツールを使えば比較的簡単に可能ではあるが・・・)だし、そんなにスキルがある訳ではないので、今回は有志が作成したカスタム「framework-res.apk」をホストPCを用いて差し替える方法を取る事とする(root化され必須ツール導入済みAndroid端末上の操作のみでも可能ではあるが失敗の可能性があるし、今後の為にもSDKを用いる事とする)。その方法は以下の通り。
- 事前準備(全ての基本!終了していればスキップ!)
- ホストPCに「Android SDK(Software Development Kit)」を導入(http://d.hatena.ne.jp/atsurin/20110427/)。
- Android端末のルート化(http://d.hatena.ne.jp/atsurin/20110425/)。
- Android端末に「BusyBox」(https://market.android.com/details?id=stericson.busybox)を導入。
- Android端末のスリープモードをOFFにする。
- Android端末で、[設定]−[アプリケーション]−[提供元不明のアプリ]を有効にする。
- Android端末で、[設定]−[アプリケーション]−[開発]−[USBデバッグ]を有効にする。
- ホストPCとAndroid端末をUSB接続する(マウントはOFFに)。
- 「/system/framework/」に存在するデフォルトの「framework-res.apk」のバックアップを取る。
- カスタム「framework-res.apk」の準備
- 作業方法
- ホストPCでコマンドプロンプト起動。
- 以下のコマンドを入力。
adb shell
su
-
- 初回のみ、Android端末上でスーパーユーザー権限を与えますかというダイアログが表示されるので許可する。
- 以下のコマンドを入力。
mount -o remount,rw -t yaffs2 /dev/block/mtdblock2 /system
dd if=/sdcard/framework-res.apk of=/system/framework/framework-res.apk
adb shell
su
cd /system/framework
chmod 644 framework-res.apk
reboot
-
- Android端末が再起動される。
- 事後設定
これで完了です。他のカスタム「framework-res.apk」に書き換える場合や、デフォルトの「framework-res.apk」に戻す場合も上記方法でOK。尚、今回は2種類のカスタム「framework-res.apk」を試してみたが、下段のバッテリー残量80%を示しているノーマルなサークル表示の方が個人的にはシックリきたんで、当面はこちらで運用。
ちなみに、100段階(パーセント)表示に設定変更できれば、アプリケーション内の画像を一括で差し替えるツール「MetaMorph」(https://market.android.com/details?id=stericson.xda.metamorph)(root化必須)などでテーマ変更した場合にも100段階がそのまま生かされる。実験的に「MetaMorph」で、ネットに転がっていたドロイド君のバッテリーテーマを適用してみた(チープなんで直ぐサークル表示に戻したが・・・)。
テーマはxda developers(http://forum.xda-developers.com/)などで入手可能。
それにしても、UNIX系コマンドは学生時代に弄った以来なんで全然覚えていないのがヤバイかも・・・