HTC chacha に公式bootloader unlockが来たので、色々カスタマイズをしてみた。
chacha は嫁さんの普段使い端末なのだが、音声SIMでしか電波強度を掴まないため、BIGLOBEやso-netの3Gサービスを使いたかったので、Android + データ専用 SIM での動作修正パッチ (ブローヴちゃん)を使用して電波強度を掴めるようにした。
さらにこのパッチは標準ROMではdeodexされていないため、「[ROM] SuperOSR and CyanogenMod7 on HTC ChaCha.」を焼いてみた。
他におもしろそうなカスタムROMがFBIのファイルサーババン祭で死んでいたという理由もある。
そんなカスタム chacha 当初はPoBox Touch 4.3のカスタム版を使用していたのだが、今朝ポケゲさんのblogで「Galaxy Y Pro の片手操作をより快適なものにするために」という記事を見つけた。
どうやらデコンパイルしてスキャンコード(0×170)でキー認識している部分をキーコード SWITCH_CHARSET(0x5f)に修正しコンパイルし直すらしい。
ネタ元はこちら
早速標準のPoBox Touch 4.3をどこからともなく拾って来てチャレンジしてみた。
以下、作業箇条書き
1. APK Managerでデコンパイル出来ない場合はXperia 系の2.3ROMから以下のファイルをpullしてapktoolに登録する。
/system/framework/framework-res.apk
/system/framework/SemcGenericUxpRes.apk
その後、APK Managerのotherフォルダにあるapktoolを使用して、以下のコマンドを実行。
apktool if framework-res.apk
apktool if SemcGenericUxpRes.apk
その後APK Managerを使用するとデコンパイル出来る。2.ソニエリチェックは以下のファイルを編集する。
smali/com/sonyericsson/android/pobox/OpenWnn.smali
522行目
invoke-virtual {v1, v3}, Ljava/lang/String;->matches(Ljava/lang/String;)Z
↓
invoke-virtual {v3, v3}, Ljava/lang/String;->matches(Ljava/lang/String;)Z3.スキャンコードをキーコード(SWITCH_CHARSET)に変更する。
smali/com/sonyericsson/android/pobox/jajpIWnnImeJaJp.smali
getScanCode()
↓
getKeyCode()
また、getScanCode()の直ぐ下の辺りにある 0x170 を 0x5f に変更する。zipalignは4にすると良いらしいのでそうしておいた。
コンパイル→署名→インストール
その後 /system/usr/keylayout/chacha-keypad.kl の key 184 を修正。
key 184 SWITCH_CHARSET WAKE_DROPPED
ついでにFacebookキーで起きる設定にもしておいた。
これで再起動してキーボードをPoBoxに切り替えた所、無事漢字変換のON/OFFをFacebookキーで切り替える事に成功した。
chachaは現在嫁さんのものなのだが、かなり快適なため、BB型のAndroid端末が欲しくなってしまった…。