POBox・iWnnで文字キーを使う方法
※関係のあるレスをまとめただけなので長いです。誰かまとめてください。
875 : SIM無しさん : 2012/02/02(木) 23:38:28.42 ID:D2GWBB47 [1/1回発言]
ハードqwertyスレで見かけて、PO-Boxの移植?をしてみた。
マナーキーに全角/半角、文字キーに記号を割り当てて、良い感じに使えてる。
884 : SIM無しさん : 2012/02/03(金) 20:19:41.51 ID:ewi10UPr [1/1回発言]
>>876
https://plus.google.com/109869161453744173609/posts
ハードqwertyスレより転載
ここ見てapk_managerなりapk_multi_toolなりでPO-BOXをデコンパイル
該当箇所を書き換え、自分はついでにソニエリチェックも外した。
ソレをリコンパイルしてインストール。
elini_keypad.klを好みに合わせて書き換え。
自分は文字キー key148を SWITCH_CHARSETからPICTSYMBOLSに
マナーキー key203をPOWERからSWITCH_CHARSETに書き換えた。
正解かどうかはわからないけどとりあえずコレで不自由なく動いてるのでヨシとした。
よく理解できているわけではないので、説明下手ですまない。
今見たら、リンク先にパッチ公開されてたのでソレ当てたら?
95 : SIM無しさん : 2012/02/18(土) 18:13:11.67 ID:FzwBq8jA [1/2回発言]
純正ROMから抜いて入れたiWnn、なんとか文字キー有効に出来ないかな…。
106 : SIM無しさん : 2012/02/18(土) 23:11:42.79 ID:3kmPFEH/ [1/2回発言]
>>95
POBOXじゃだめ?
apk修正がちょい面倒だけど快適だよ。
107 : SIM無しさん : 2012/02/18(土) 23:20:14.57 ID:1nPYxiA3 [1/1回発言]
>>106
修正の方法を教えて栗
109 : SIM無しさん : 2012/02/18(土) 23:45:29.24 ID:3kmPFEH/ [2/2回発言]
>>107
scancodeをkeycodeに差し替えればおk
一個のsmali内の数ヵ所をkeycodeへ
置換しただけだったと思う。
114 : SIM無しさん : 2012/02/19(日) 11:29:39.68 ID:BwkyVGN6 [1/1回発言]
>>107
前スレに手順書いた記憶が。
ソニエリチェックもはずした方が良いかも。build.prop改変でもいいけど。
116 : SIM無しさん : 2012/02/19(日) 17:34:53.84 ID:Y92Xblsl [1/1回発言]
>>109,114
前スレの情報だけでは分からなかった・・・
117 : SIM無しさん : 2012/02/19(日) 17:50:43.14 ID:M2m0yekv [1/1回発言]
apk_managerとか使える状態なの?
その上で↓を読んでもわからないならあきらめる。
ttp://peach2red.blogspot.com/2012/02/htc-chacha-facebookpobox.html
…か、build.prop改変でソニエリチェックだけ回避する。
コードを入れ替えなくてもそれなりには使える。
118 : SIM無しさん : 2012/02/19(日) 18:59:37.62 ID:fp0HEyks [1/2回発言]
>>116拙い説明でアレだが
1) 用意するもの
apk_managerかAPK Multi-Tool、自分は前者でうまくいかなかったので後者を使用。
適当なエディタ
オプチャから抜いたelini_keypad.kl
JapaneseIME.apk(PO-Box4.3)、自分はメインで使ってるSO-01B用2.3.3カスROMから抜いた。
あともしかしたら、framework-res.apkとSemcGenericUxpRes.apkも必要かも。
共に端末内だと/system/frameworkにある。
ツール類やSDK、JDKの導入、使用方については割愛。
2) 改変場所
ソニエリチェック外し
\projects\JapaneseIME.apk\smali\com\sonyericsson\android\pobox\OpenWnn.smaliの
invoke-virtual {v1, v3}, Ljava/lang/String;->matches(Ljava/lang/String;)Zを
invoke-virtual {v3, v3}, Ljava/lang/String;->matches(Ljava/lang/String;)Zに
文字キー有効化
\projects\JapaneseIME.apk\smali\com\sonyericsson\android\pobox\jajp\IWnnImeJaJp.smali内を
getScancodeで検索getKeycodeに変更、数行下の0x170を0x5fに変更。
4箇所あるので全て同様に。
続く
119 : 118 : 2012/02/19(日) 19:01:06.35 ID:fp0HEyks [2/2回発言]
2)の続き
その後リコンパイル>署名でapk改変は終了
elini_keypad.klの文字キーに割り当てたいキーをSWITCH_CHARSET
記号キーにしたいキーをPICTSYMBOLSに書き換え
3) 導入
elini_keypad.klは置き換えてパーミッション設定
JapaneseIME.apkはそのままインストール
/system/appに入れるのはなんか面倒らしいのでやらなかった。
apk改変とかやったことのない自分でもできたんだから、
誰でもなんとかなるんじゃないかな?
146 : SIM無しさん : 2012/02/21(火) 17:43:17.88 ID:vjy8DnjS [1/2回発言]
純正ROMから引っこ抜いたiWnnを
文字キー(SWITCH_CHARSET) / Symキー(PICTSYMBOLS) に
対応させてみたけど、パッチにしたら需要ある?
152 : SIM無しさん : 2012/02/21(火) 21:20:06.93 ID:vjy8DnjS [2/2回発言]
>>147-151
どぞー
https://plus.google.com/109869161453744173609/posts
154 : SIM無しさん : 2012/02/21(火) 23:11:06.56 ID:Z7Ngl145 [2/2回発言]
>>152
有り難う御座います!
apk managerが日本語化版しかダウンロードできなくて、
それが途中でエラーをはくのでつまいてるんですが、もうちょい頑張ってみます
156 : SIM無しさん : 2012/02/22(水) 00:44:15.10 ID:4m0brS2X [1/3回発言]
apk_managerでデコンパイルできねぇorzなぜかコンパイルは出来るっぽい。
patch.exe拾ってきたけど黒窓でなんか無反応orzほっとけばそのうち終わるの?
てな訳でデコンパイルだけAPK Multi-Toolで行い
パッチ当ては手動で書き換えて無事完成しました。
いい情報を有難う御座います。
厚かましく質問ですが、
PICTSYMBOLSをFn+Spaceではなく文字キーに割り当てたい場合、ドコをいじればいいのでしょうか?
elini_keypad.klはマナーにSWITCH_CHARSET、文字にPICTSYMBOLSを割り当ててますが、
PICTSYMBOLSが無視されてるようなのでどうにかしたいと思ってます。
168 : SIM無しさん : 2012/02/22(水) 20:57:40.21 ID:SzYPW8Vg [1/1回発言]
>>152
154です。compileはApk Managerでする必要があるという説明だったので
decompileをApkManagerではなく、APK Multi-Tool で実行→成功
APK Multi-Tool\Projectsの中身をApkManager\Projectsに移動
以下は説明どおりの手順で
patch.exeはcygwinのものをインストールして実行→成功
compileをApkManagerで実行→手順に従ってインストールで無事動作しました!
176 : 152 : 2012/02/22(水) 22:53:59.77 ID:E/m/od2M [1/1回発言]
>>156
PICTSYMBOLSは見てるはずなんですけどねー
少なくともXperia ProではSymキー単独で記号が出ますよ。
L-04CのCM7では動作確認してないんでわかんないですけど、
KeyEvent Displayとかでちゃんとキーコードは出てます?
>>168
とりあえず動いたようでよかったっす
でも156さんも含めapk managerではDecompileできないようで…
なんでだろ?
まっさらな状態で試してみないとダメですかね。
178 : SIM無しさん : 2012/02/22(水) 23:54:26.68 ID:4m0brS2X [2/3回発言]
>>176
KeyEvent DisplayだとPICTSYMBOLSを割り当てたキーのみ、
KeyUpだけでKeyDownが出てないようです。
PICTSYMBOLSというか記号入力が異なるだけで、
PO-Box,iWnn共にちゃんと使えてますので大丈夫です。
Po-Boxを純正風レイアウトにしようとAlt+Spaceで記号仕様にしましたが、
こっちはAlt+Spaceを無視してくれるorz
classes.dexが570032のやつでも中身ちょっと違うようで、やっぱり手動書き換えでしたが・・・
結果、私の場合
PO-Box
179 : SIM無しさん : 2012/02/22(水) 23:56:23.87 ID:4m0brS2X [3/3回発言]
まずった
結果
PO-Box > Alt+Spaceを無視
iWnn > PICTSYMBOLSを無視、と微妙にレイアウト統一が遠のいたようですw
183 : SIM無しさん : 2012/02/23(木) 02:34:30.24 ID:KLj89yTV [1/1回発言]
>>176
decompileはApk_Manager\other\apktool.*
が古いから失敗してたみたいです。
APKMultiTool\platform-tools\apktool.*
のほうが新しいので、これで置き換えるといけました。
差し替え前に、Apk_Managerで失敗していた場合は、
邪魔な一時ファイルが残っていて、失敗するようなので
Apk_Manager\log.txtを見て、
作成に失敗した一時ファイルを削除するといけました。
自分の場合は、ログを見て
I: Loading resource table from file: D:\apktool\framework\1.apk
を消したら
apktool差しかえ後のApk_Managerでdecompileが成功するようになりました。
184 : SIM無しさん : 2012/02/23(木) 07:33:13.87 ID:jBKqCSuX [1/1回発言]
>>162
res/values/array.xmlの<array name="symbol_item">の下にある
%を<item>"%"</item>に変更(%は半角)
自分の場合はこれで直った。
187 : SIM無しさん : 2012/02/24(金) 00:46:59.78 ID:DW+WS3D1 [1/2回発言]
前に出てたPOBOXの奴作ろうとしてデコンパイルするところまではできたんだけどパッチ当てられなかった。Patch.exeって何使えばいいんだ?GNUWin32だと適用できなかった。あとlcd densityいじってるとキーが縦に縮むのって何とかならないのかな。ATOKは縮まないみたいだけど
188 : 162 : 2012/02/24(金) 00:58:57.06 ID:sxwY6PcB [2/2回発言]
デコンパイルまで出来たなら>>117のリンク先の通りにすれば
よいだけですよ。ついでに>>184もしておけば完璧です。
189 : SIM無しさん : 2012/02/24(金) 01:17:05.50 ID:DW+WS3D1 [2/2回発言]
>>188
手で書き換えはやってみたんですかハードキー使ったとたん落ちる代物ができてしまって…
ソニエリチェックは発動しなかったので書き換えはできてるはずなんですが。
190 : 152 : 2012/02/24(金) 02:22:19.62 ID:wL1WH1gD [1/2回発言]
>>178
CM7入れて試してみました。
どのキーを入れ替えてもPICTSYMBOLSはKeyUpしか取れないっすね。
どうやらPICTSYMBOLSのキーコードがIMEに渡ってくる前に
どこかでかっぱらわれてるみたいな感じですねー
しょうがないんで、PICTSYMBOLSではなく、SYMに割り当ててみたら、
…入力IMEの切り替えダイアログ出るし。
まぁこれはこれで便利そうだけど、今回の目的とは違うんで
使えそうなキーコードということで、SOFT_LEFT(0x01)を割り当てて
合わせてiWnnと[[POBox]]のSymキー認識部分を書き換えたら、
無事同じように使えるようになりましたよ。
ちなみに、POBoxでFn+Spaceは使えたんで、
無視されるっていうのはなにか書き換え失敗してたりしませんか?
191 : 152 : 2012/02/24(金) 02:27:15.06 ID:wL1WH1gD [2/2回発言]
あ、あと
187さんにも関係あると思うんだけど、
ここの、
https://plus.google.com/109869161453744173609/posts
POBox用パッチは baksmali & smali 用で、
iWnn用パッチは apk manager 用になってます。
どうもbaksmaliとapktoolで出力の書式が違うみたいで、、最近気づきました。
199 : SIM無しさん : 2012/02/24(金) 22:26:09.91 ID:hq2hozI2 [1/1回発言]
>>152サマ
検証お疲れ様です。
て、事はそれぞれの0x5eかな?を0x01に書き換えてやればオッケイってことなんでしょうか。
書き換えミスの探索と共に週末の宿題になりそうです。
パッチ当ての件ですが>>168にあるようにcygwinのpatch.exeだと当たるようです。
私の場合、それでも何箇所か書き換え失敗の表示が出たので手動書き換えしましたが。
よくよく見ると元のキー定義が16進じゃなく10進ぽかったりして・・・
classes.dexが570032バイトのなんだけどなぁ
最終更新:2012年06月02日 10:43