ICS, JB(Galaxy Nexus(UK))のMessagingでソフトバンクのSMS/MMSの送受信を行えるようにする
追記
- 2012/11/29
- 4.2へのアップデート後も問題ありませんでした
- ただし、framework-res.apkのインストールがうまくいかなかったため、GitHub - paulobrien/Apktool: A tool for reverse engineering Android apk files をビルドして利用しました。
- 2012/10/21
- 4.1.2へのアップデート後、同様の手順を試したものの正しく動く状態を確認しました
- 2012/07/15
- 4.1.1 (Jelly Bean)でもほぼ同様の操作を試みたところ問題ありませんでした
- 2012/05/07
- 4.0.4の追加のシステムアップデート後も同作業で問題ありませんでした
- 2012/04/04
- 同様に4.0.4へのアップデート後も作業後問題無く使えています
- 2012/01/16
- Mmsをバックアップしたものに書き戻してAndroidを4.0.2にアップデート後、再度この作業を行って使用出来ました
MMSをAndroid4でも使いたい
NexusSを使っている時にアップデートの度に元に戻して、再度適用する度に手順などを調べてしまっていたので備忘録として。
今後まだ長くない間隔でアップデートがありそうなので、その度の手間が面倒+スーパユーザで使うのがせいぜいClockSyncくらいなので非rootedで適用しています。
MMSを使うのはリア充だけじゃないです。
操作ミスにより文鎮化など起こり得るため自己責任でお願いいたします。
前提作業
これは毎度必要ない。
- fastboot-macを準備
- adbを使える環境を準備
- apktoolを使える環境を準備
- autosignなどapkに署名が出来る環境を準備
- ブート用イメージを準備
- recovery-clockwork-5.5.0.2-maguro.img
Mms.apkをごにょごにょする
- Mms.apkを取り出す
- よしなにバックアップなども
$ adb pull /system/app/Mms.apk
- apkをデコード
$ adb pull /system/framework/framework-res.apk $ apktool if framework-res.apk $ apktool d Mms.apk
- UAを書き換えて再ビルド
$ vim Mms_backup/res/xml/mms_config.xml
+ <string name="userAgent">iPhoneOS/3.0 (7A341)</string> - <string name="userAgent">Galaxy Nexus</string>
$ apktool b Mms
- 元のMms.apkをzipとして解凍
- 再ビルドしたbuild/apk/res/xml/mms_configで解凍した中身の/res/xml/mms_configを置き換え
- zipに直してMms.apkに戻す
- autosignなどで署名を付ける
$ java -jar signapk.jar key.x509.pem key.pk8 Mms_rebased.apk Mms_rebased_signed.apk
端末のMmsを置き換える
- リカバリイメージで起動
$ ./fastboot-mac boot ~/Downloads/recovery-clockwork-5.5.0.2-maguro.img downloading 'boot.img'... OKAY booting... OKAY
- 端末を操作して/systemをマウントする
- Mms.apkを書き換え
$ adb push Mms_rebased_signed.apk /system/app/Mms.apk