タグ別アーカイブ: pobox

P○B○xをphotonで使いたいw

ちょっと改造ネタ。
某たっちゃんも書いてた感じですが、かぶってます( ー`дー´)キリッ
で、せっかくMNPしたphotonさんで使いたくて、いろいろ調べてみました。
最初はICS arcで動かすために、動かないとは聞いていたんですが、入れてみたw
Logcat見てみたら、『android.text.Styledというクラスがないんですけどw』(脳内翻訳)という
メッセージが出ていたので、これがないんだと。
androidで始まってるので、ま、frameworkあたりにあるんだろうと思って、
NXのframeworkを のぞいてみたらありますた。
これを、移せば言いじゃん!というわけで、最初にICSなarcのframeworkにこのクラスを移植。

で、某たっちゃんところにあったCMW用のzipを入れてみたら、普通に動きますた。
この方法は、OS弄ってるので、たかがアプリでリスクあるので、
photonで使うために 別の案を考えた(想像つくよw)

ポイントは、2つ。
1.android.text.Styledクラスを持ってくる。

  • P○B○xをデコードする。
  • NXのframework.jarもデコードする。
  • framework.jarのsmaliフォルダのandroid/text/Styled.smaliをP○B○xのsmaliフォルダに同じ階層でコピー

2.ソニエリチェックを外す。
パッチの箇所は3カ所。

[code]
smali/com/sonyericsson/android/pobox/core/IWnnLanguageSwitcher.smali
@@ -633,9 +633,9 @@

.line 329
.local v7, manufacturer:Ljava/lang/String;
– if-eqz v2, :cond_0
+ #if-eqz v2, :cond_0

– invoke-virtual {v7, v2}, Ljava/lang/String;->matches(Ljava/lang/String;)Z
+ invoke-virtual {v7, v7}, Ljava/lang/String;->matches(Ljava/lang/String;)Z

move-result v11

smali/com/sonyericsson/android/pobox/core/OpenWnn.smali
@@ -346,9 +346,9 @@

.line 868
.local v7, manufacturer:Ljava/lang/String;
– if-eqz v2, :cond_0
+ #if-eqz v2, :cond_0

– invoke-virtual {v7, v2}, Ljava/lang/String;->matches(Ljava/lang/String;)Z
+ invoke-virtual {v7, v7}, Ljava/lang/String;->matches(Ljava/lang/String;)Z

move-result v11

smali/com/sonyericsson/android/pobox/settings/ControlPanelJaJp.smali
@@ -503,9 +503,9 @@

.line 166
.local v11, manufacturer:Ljava/lang/String;
– if-eqz v5, :cond_0
+ #if-eqz v5, :cond_0

– invoke-virtual {v11, v5}, Ljava/lang/String;->matches(Ljava/lang/String;)Z
+ invoke-virtual {v11, v11}, Ljava/lang/String;->matches(Ljava/lang/String;)Z

move-result v17

[/code]

あ、あとデコードに罠がありますた。

[code]
res/layout/blue_key_setting_layout.xml
@@ -19,7 +19,7 @@
<TextView android:gravity="center" android:id="@id/TextViewO" android:background="@drawable/ti_keylayout_setting_num" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" android:layout_weight="1.0" />
<TextView android:gravity="center" android:id="@id/TextViewP" android:background="@drawable/ti_keylayout_setting_num" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" android:layout_weight="1.0" />
</LinearLayout>
– <LinearLayout android:textSize="26.0dip" android:orientation="horizontal" android:id="@id/LinearLayout04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:directionality="0">
+ <LinearLayout android:textSize="26.0dip" android:orientation="horizontal" android:id="@id/LinearLayout04" android:layout_width="wrap_content" android:layout_height="wrap_content" android:directionality="none">
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:textColor="#ff000000" android:gravity="center" android:id="@id/TextView00" android:background="@drawable/ti_keylayout_setting_symbol_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" app:blueKeyName="-1000" />
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:textColor="#ff000000" android:gravity="center" android:id="@id/TextView01" android:background="@drawable/ti_keylayout_setting_symbol_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" app:blueKeyName="-1001" />
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:textColor="#ff000000" android:gravity="center" android:id="@id/TextView02" android:background="@drawable/ti_keylayout_setting_symbol_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" app:blueKeyName="-1002" />
@@ -31,7 +31,7 @@
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:textColor="#ff000000" android:gravity="center" android:id="@id/TextView08" android:background="@drawable/ti_keylayout_setting_symbol_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" app:blueKeyName="-1008" />
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:textColor="#ff000000" android:gravity="center" android:id="@id/TextView09" android:background="@drawable/ti_keylayout_setting_symbol_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" app:blueKeyName="-1009" />
</LinearLayout>
– <LinearLayout android:orientation="horizontal" android:id="@id/LinearLayout05" android:layout_width="wrap_content" android:layout_height="wrap_content" android:directionality="0">
+ <LinearLayout android:orientation="horizontal" android:id="@id/LinearLayout05" android:layout_width="wrap_content" android:layout_height="wrap_content" android:directionality="none">
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:gravity="center" android:id="@id/TextViewSetting" android:background="@drawable/ti_keylayout_setting_system" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" />
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:textColor="#ff000000" android:gravity="center" android:id="@id/TextView10" android:background="@drawable/ti_keylayout_setting_symbol_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" app:blueKeyName="-1010" />
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:textColor="#ff000000" android:gravity="center" android:id="@id/TextView11" android:background="@drawable/ti_keylayout_setting_symbol_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" app:blueKeyName="-1011" />
@@ -42,7 +42,7 @@
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:textColor="#ff000000" android:gravity="center" android:id="@id/TextView16" android:background="@drawable/ti_keylayout_setting_symbol_def" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" app:blueKeyName="-1016" />
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:textSize="26.0dip" android:gravity="center" android:id="@id/TextViewDel" android:background="@drawable/ti_keylayout_setting_system" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" />
</LinearLayout>
– <LinearLayout android:orientation="horizontal" android:id="@id/LinearLayout07" android:layout_width="fill_parent" android:layout_height="wrap_content" android:directionality="0">
+ <LinearLayout android:orientation="horizontal" android:id="@id/LinearLayout07" android:layout_width="fill_parent" android:layout_height="wrap_content" android:directionality="none">
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:id="@id/TextViewKana" android:background="@drawable/ti_keylayout_setting_system" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" android:layout_weight="1.0" />
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:id="@id/TextViewNum" android:background="@drawable/ti_keylayout_setting_system" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" android:layout_weight="1.0" />
<com.sonyericsson.android.pobox.customkeyboard.BlueKeyButton android:id="@id/TextViewAt" android:background="@drawable/ti_keylayout_setting_system" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" android:layout_weight="1.0" />

res/values/styles.xml
@@ -2,9 +2,9 @@
<resources>
<style name="WnnKeyboardView" parent="@android:style/Widget.KeyboardView" />
<style name="BiDiTheme" parent="@com.sonyericsson.uxp:style/SEMCTheme">
– <item name="android:hardwareAccelerated">1</item>
+ <item name="android:hardwareAccelerated">true</item>
</style>
<style name="BiDiThemeAlertDialog" parent="@com.sonyericsson.uxp:style/SEMCTheme.Dialog.Alert">
– <item name="android:hardwareAccelerated">1</item>
+ <item name="android:hardwareAccelerated">true</item>
</style>
</resources>
[/code]

最後に、lib/armeabiフォルダを作って、soファイルを流し込んで、リビルド。
一応、jarsignerしておけば、とりあえずphotonで動くのが出来ました。
まぁ、こんな感じです。