そろそろ X06HT (Desire) に Android 2.3 を入れてみたいけれど,HTC 公式の Gingerbread (2.3) の導入は結構手間が掛かる。
ここまでやるんだったら,何か別のカスタム ROM を導入したほうが満足できるのでは? という考えのもと,HTC Sense 系の RevolutioN v2.0 の日本語化 + 国内版 X06HT 化を実施した作業メモ。
¶ 展開
ダウンロードしたカスタム ROM イメージ (いわゆる update.zip) を展開。
tiger% mkdir ORG
tiger% cd !$
cd ORG
tiger% unzip ../dist/RevolutioN.A2SD+.v2.0.By.TamirDa-signed.zip
作業用にコピー。
tiger% cd ..
tiger% cp -a ORG WORK
¶ apns.xml 修正
framework-res.apk に含まれる apns.xml を書き換える準備。
Apk Manager の place-apk-here-for-modding フォルダに WORK/system/framework/framework-res.apk をコピーしておく。
D:\apk_manager_4.9>Script.bat
22 Set current project
Please make your decision:22
- 1 - framework-res.apk
Choose the app to be set as current project?
Enter It's Number: 1
9 Decompile apk
Please make your decision:9
ここで projects\framework-res.apk\res\xml\apns.xml を書き換える。
終わったら,framework-res.apk を作り直す。
19 Select compression level for apk's
Please make your decision:19
Enter Compression Level (0-9) : 0
11 Compile apk
Please make your decision:11
Building Apk
Is this a system apk (y/n)
Type input: y
Aside from the signatures, would you like to copy
over any additional files that you didn't modify
from the original apk in order to ensure least
# of errors (y/n)
Type input: y
Everything is Ok
Folders: 47
Files: 1402
Size: 7689304
Compressed: 6435717
In the apk manager folder u'll find
a keep folder. Within it, delete
everything you have modified and leave
files that you haven't. If you have modified
any xml, then delete resources.arsc from that
folder as well. Once done then press enter
on this script.
続行するには何かキーを押してください . . .
ここで keep\res\xml\apns.xml と keep\resources.arsc を削除する。
終わったら,何かキーを押す。
24 Quit
Please make your decision:24
D:\apk_manager_4.9>cd place-apk-here-for-modding
D:\apk_manager_4.9\place-apk-here-for-modding>..\other\7za e unsignedframework-res.apk resources.arsc
D:\apk_manager_4.9\place-apk-here-for-modding>..\other\7za u -tzip -mx=0 unsignedframework-res.apk resources.arsc
D:\apk_manager_4.9\place-apk-here-for-modding>..\other\zipalign -f -v 4 unsignedframework-res.apk new_framework-res.apk
完成した new_framework-res.apk を WORK/system/framework/framework-res.apk としてコピーし,APN 設定の修正は完了。
¶ gps.conf 修正
gps.conf を書き換える。
tiger% vi WORK/system/etc/gps.conf
tiger% vi WORK/system/etc/gps.conf
tiger% diff ORG/system/etc/gps.conf WORK/system/etc
1c1
< NTP_SERVER=europe.pool.ntp.org
---
> NTP_SERVER=jp.pool.ntp.org
tiger%
¶ 日本語フォントファイル導入
日本語フォントファイルを WORK/system/fonts/ に追加する。
Android 2.3 以降は MTLmr3m.ttf (モトヤLマルベリ 3),MTLc3m.ttf (モトヤLシーダ 3),DroidSansJapanese.ttf の順に探してくれるようなので,今回は MTLmr3m.ttf を追加した。
Android 2.2 までのようにファイル名を DroidSansJapanese.ttf に変えなくてよい。
絵文字入り DroidSansFallback.ttf を WORK/system/fonts/ に上書きでコピーする。
今回入れたのは DroidSansFallback++emoji.zip から抽出したもの。
DroidSans-Bold.ttf を DroidSans.ttf と同じものにしておくと日本語フォントのボールド (太字) が表示されるようになるので,その対応。
tiger% cp -p WORK/system/fonts/DroidSans.ttf WORK/system/fonts/DroidSans-Bold.ttf
¶ build.prop 修正
build.prop の編集。
国内版 X06HT 化に関係ありそうなところだけ適当に。
tiger% vim WORK/system/build.prop
tiger% diff -u ORG/system/build.prop WORK/system
--- ORG/system/build.prop 2011-10-28 00:24:34.000000000 +0900
+++ WORK/system/build.prop 2011-11-12 19:13:22.199636826 +0900
@@ -1,9 +1,12 @@
-ro.ril.oem.ecclist=112,911
+ro.ril.oem.ecclist=110,118,119
ro.ril.oem.nosim.ecclist=110,112,911,000,08,999,118,119,120,122
ro.ril.enable.a52=0
ro.ril.enable.a53=1
ro.ril.disable.fd.plmn.prefix=23402,23410,23411
ro.ril.enable.sdr=0
+ro.ril.fast.dormancy.timeout=3
+ro.ril.enable.sbm.feature=1
+ro.ril.oem.mosms.mode=1
ro.com.google.clientidbase=android-htc
# begin build properties
# autogenerated by buildinfo.sh
@@ -21,8 +24,8 @@
ro.build.user=root
ro.build.host=AA138
ro.build.tags=release-keys
-ro.product.model=HTC Desire
-ro.product.brand=htc_wwe
+ro.product.model=X06HT
+ro.product.brand=softbank_jp
ro.product.name=htc_bravo
ro.product.device=bravo
ro.product.board=bravo
@@ -42,7 +45,7 @@
ro.build.description=3.14.405.1 CL96875 release-keys
ro.build.changelist=96875
ro.product.ua=
-ro.build.fingerprint=htc_wwe/htc_bravo/bravo:2.3.3/GRI40/96875.1:user/release-keys
+ro.build.fingerprint=softbank_jp/htc_bravo/bravo:2.3.3/GRI40/96875.1:user/release-keys
ro.build.project=205112
ro.product.version=RevolutioN v2.0 A2SD+ By TamirDa
keyguard.no_require_sim=1
@@ -61,7 +64,7 @@
# ace RF team request
-ro.ril.enable.dtm = 0
+ro.ril.enable.dtm = 1
ro.ril.gprsclass = 12
ro.ril.hsdpa.category = 10
ro.ril.hsupa.category = 6
@@ -69,7 +72,7 @@
# Default network type.
# 0 => WCDMA preferred.
-ro.telephony.default_network=3
+ro.telephony.default_network=2
wifi.interface=eth0
wifi.supplicant_scan_interval=60
@@ -83,6 +86,7 @@
# For the default value of agps
ro.ril.def.agps.mode = 2
+ro.ril.def.agps.feature=2
# For emmc phone storage
ro.phone_storage = 0
@@ -238,3 +242,10 @@
debug.sf.hw=1
video.accelerate.hw=1
ro.HOME_APP_ADJ=1
+
+ro.com.google.clientidbase=android-htc
+ro.com.google.clientidbase.yt=android-htc
+ro.com.google.clientidbase.am=android-softbank-jp
+ro.com.google.clientidbase.vs=android-htc
+ro.com.google.clientidbase.gmm=android-htc
+ro.com.google.clientidbase.ms=android-htc
tiger%
[2011/11/22 追記]
バッテリの持ち的には以下の値のほうがいいのかもしれない (上記と異なる部分のみ抜粋)。
ro.ril.gprsclass = 10
ro.ril.hsdpa.category = 8
ro.ril.hsupa.category = 5
ro.ril.hsxpa = 1
¶ CID/default.xml 修正
CID/default.xml の編集。
これも関係ありそうなところだけ適当に。
tiger% vim WORK/system/customize/CID/default.xml
tiger% diff -u ORG/system/customize/CID/default.xml WORK/system/customize/CID
--- ORG/system/customize/CID/default.xml 2011-04-29 19:49:30.000000000 +0900
+++ WORK/system/customize/CID/default.xml 2011-11-12 19:24:33.243617069 +0900
@@ -4,258 +4,9 @@
<module name="locale">
<function>
<set name="single">
- (中略)
+ <item name="total_list">en_JP;ja_JP;</item>
+ <item type="boolean" name="en_JP">yes</item>
+ <item type="boolean" name="ja_JP">yes</item>
</set>
</function>
</module>
@@ -279,48 +30,10 @@
</set>
</function>
</module>
- <module name="InputMethod">
- (中略)
- </module>
<module name="deviceData">
<function>
<set name="single">
- <item name="device_name">HTC Desire A8181</item>
+ <item name="device_name">X06HT</item>
</set>
</function>
</module>
tiger%
¶ 確認
以上で X06HT (Desire) 用としては問題ないはず。
書き換えたファイルの最終確認。
tiger% diff -qr ORG WORK
ファイルORG/system/build.propとWORK/system/build.propは違います
ファイルORG/system/customize/CID/default.xmlとWORK/system/customize/CID/default.xmlは違います
ファイルORG/system/etc/gps.confとWORK/system/etc/gps.confは違います
ファイルORG/system/etc/wifi/wpa_supplicant.confとWORK/system/etc/wifi/wpa_supplicant.confは違います
ファイルORG/system/fonts/DroidSans-Bold.ttfとWORK/system/fonts/DroidSans-Bold.ttfは違います
ファイルORG/system/fonts/DroidSansFallback.ttfとWORK/system/fonts/DroidSansFallback.ttfは違います
WORK/system/fontsだけに発見: MTLmr3m.ttf
ファイルORG/system/framework/framework-res.apkとWORK/system/framework/framework-res.apkは違います
tiger%
¶ update-signed.zip 作成
固める。
tiger% cd WORK
tiger% zip -r ../update.zip .
署名する。
tiger% java -jar apk_manager_linux_4.7/other/signapk.jar apk_manager_linux_4.7/other/testkey.x509.pem apk_manager_linux_4.7/other/testkey.pk8 update.zip update-signed.zip
完成。
¶ 動作確認など
¶ RevolutioN v2.0 ファーストインプレッション
手順の最後に「Wait 15-20 Min for first boot」って書いてあったが,10 分も掛からずに起動した。
Class 10 の効果かもしれない。
RevolutioN v2.0 は,OS は HTC 公式の Android 2.3.3,Sense は 2.1 と 3.0 のいいとこ取りで,これに人気のカスタムテーマが盛り込まれた状態の ROM。
画面エフェクトが最近の機種並みになったし (画面を ON / OFF するときの CRT アニメーションも付いてるよ!),ブートアニメーションに至っては Android 4.0 の Nexus Prime と同じものである。
しばらく新鮮な使い心地で楽しめそうだ。
これを使いながら,Android 4.0 搭載の本命機種が登場するのを待つとしよう。