CORY's twilight zone > Android 設定備忘録 > Xperia mini Pro SK17a (4.0.4 = ICS)

Android 設定備忘録 Xperia mini Pro SK17a (4.0.4 = ICS)

Xperia mini Pro SK17a/i (WH) 外観 (20KB)

Xperia mini Pro は、いわゆる qwerty 物理キーボードを搭載した、小型の Android 端末。国内の通信キャリアから発売されていない、いわゆる海外端末ですが、表示・入力とも日本語に標準対応しています。

日本国内向けには同系列でキーボードの無い Sony Ericsson mini S51SE(Xperia mini ST15 に相当) がイーモバイルから販売されていますが、この機種を含め Xperia 2011年モデルの多くが同様の手順でICS化・root取得できます。

しかし、ここ数年はどのキャリアもキーボード付き端末を扱わず、筐体も大型化の一途。毎日携帯する物ですから、皆が大きい物を欲しがるわけではないでしょう。本機は日本でこそ売るべき端末だと思うのですが、国内店頭にはAndroid端末が溢れ返っている割りに、どれも似たような板状の端末ばかりで、機種が多い割りに多様性に乏しく、国内外で便利に使いたいといった需要に応える小型のSIMフリー端末はほとんどありません。

W-CDMA/GSM に対応する(対応バンドは下記)本機はSIMロックがされていないので、海外出張の多い人などは本機のような個性ある機種を個人輸入して(または中古店でも入手できる場合がある)使えるようにしておくと便利です。 (i)は東南アジア・欧州向け、(a)は北米向け。日本国内では、仕様上は両方とも Band 1 (2GHz) で使えるとともに、国際モデル(i)はソフトバンクモバイル(SBM)のプラチナバンドも掴むようです。

※便宜上アラビア数字で書いています。Band 1 はいわゆる国際バンド(日本ではドコモとSBMが対応)、Band 5 はNTTドコモのプラスエリア(Band 6, 19)を内包、Band 8 はSBMのプラチナバンド。Band 9 はイーモバイル(全国)とNTTドコモ(東名阪)

【参考情報】 説明書(英語、10MB)仕様等(英語、3MB)

【関連情報】 Android 設定備忘録 Xperia mini Pro SK17a (4.4 = KitKat)

【備考】 ICS = Ice Cream Sandwich = Android 4.0, GB = Gingerbread = Android 2.3, root = Superuser = 管理者権限

前置きはこれくらいにして、以下は本機を使いやすくするための設定方法。SK17a(北米モデル)について書いていますが、SK17i(国際モデル)でも一部を除き同様のようですね。

なお、ここに書いた内容は筆者の個人的な備忘録です。内容について筆者はいかなる保証もしませんし、質問等いただいても答えられません。また、ここに書いてある操作をするとメーカーや販売店の保証を受けられなくなるばかりでなく、最悪、端末が使えなくなる(いわゆる文鎮化する)かもしれません。あしからず。

目次

手軽にroot取得&ICS化 スクリーンショット(画面キャプチャ)の取り方 フォントの変更 FOMAプラスエリア対応 build.prop 設定変更 キーボードの配列を替える 消せないアプリの削除方法 Flashtool SK17a を 4.1.B.0.587 へ更新 EMOBILE Sony Ericsson mini S51SE その他

手軽にroot取得&ICS化

パソコン(Windows)にUSBドライバをインストール

  1. Android SDK をインストール
  2. Android SDK Tools → SDK Manager を起動
  3. Packages 一覧から、Extras → Google USB Driver にチェックを入れて Install
  4. Unicode対応のテキストエディタ(Windows標準添付のメモ帳でも可)で C:\Program Files\Android\android-sdk\extras\google\usb_driver\android_winusb.inf を開き、下記を追記して保存(元のファイルは必要に応じバックアップを取っておく)
  5. ▼(android-sdk)\extras\google\usb_driver\android_winusb.inf
    [Google.NTx86]
    ; SonyEricsson
    %SingleAdbInterface% = USB_Install, USB\VID_0FCE&PID_0DDE
    %CompositeAdbInterface% = USB_Install, USB\VID_0FCE&PID_0DDE&MI_01
    %SingleBootLoaderInterface% = USB_Install, USB\VID_0FCE&PID_0DDE
    
    [Google.NTamd64]
    ; SonyEricsson
    %SingleAdbInterface% = USB_Install, USB\VID_0FCE&PID_0DDE
    %CompositeAdbInterface% = USB_Install, USB\VID_0FCE&PID_0DDE&MI_01
    %SingleBootLoaderInterface% = USB_Install, USB\VID_0FCE&PID_0DDE
    
  6. Xperia mini Pro を起動してから、付属のUSBケーブルでパソコンと接続
  7. ドライバインストールの指示に従い、(android-sdk)\extras\google\usb_driver を指定してインストール

注記:

本稿執筆以降、ICS公式ROM(筆者は 4.1.B.0.587 で確認)から直接root取得できるrootkitが登場している。

これを使うと、昔のROMを用意する必要なく、非rootのまま先にICS化してからrootを取得できる。 (これに限らないが、ご利用は自己責任で。)

ただし、これを使うと busyboxCWM Recovery は導入されないので、別々に導入する必要がある。

root権限取得後、CWM Recovery の導入には X-parts が使える。少々古いがこれも一応動いた。

また、筆者は試していないが、他にもICSにアップデートした端末でもrootを取れるようにしたrootkitが配布されている

(29KB)
▲ビルド番号を確認
(25KB)
▲USBデバッグを有効に
(25KB)
▲提供元不明のアプリ
(36KB)
▲PCCドライバはスキップ
(36KB)
▲Superuserが登録される
(36KB)
▲root権限を使うアプリ
 が実行された時



(9KB)
▲Superuser

Xperia mini pro のバージョンを確認

設定→端末情報→ビルド番号 を確認、4.0.2.A.0.58 またはそれ以前ならそのまま次項へ。

うっかりアップデートしてしまった場合や、購入時点で 4.0.2.A.0.62 が入っていた場合は、ここに書いた手順が使えないので、下記3択になる。

※本稿執筆以降に 4.0.2.A.0.62 / 4.1.B.0.431 / 4.1.B.0.587 用のrootkitも登場している。

なお、このページに書いている事をする分には、bootloader unlock する必要はない。unlock すると公式アップデートサービス (SEUS/SUS) が使えなくなるので、うっかり unlock してしまった場合は relock するか、公式アップデートサービスを諦めてカスタムROMを焼いて使う

【参考】

GB で root 取得

xda-developers - [Tutorial]Root.Xperia 4.0.4 ROM [all h/m(dpi)] | 4.1.B.0.431 [23st June](英語) にある手順の通り。 GB の最新版 (4.0.2.A.0.62) や ICS に更新してしまうと下記手順でrootを取れないので、一旦 4.0.2.A.0.58 に書き戻すよう案内されている。

(必要な物)

(手順)

  1. Xperia mini Pro にデータがある場合はバックアップ。以下の手順のどこかで間違えると初期化してやり直しになるので、バックアップは必須。
  2. DoomLord's Easy Root Toolkit for Xperia Gingerbreade >= .58 をダウンロード。本稿執筆時点の最新は DooMLoRD_v4_ROOT-zergRush-busybox-su.zip
  3. DooMLoRD_v4_ROOT-zergRush-busybox-su.zip を適当な場所に展開。以下の例では D:\ に展開している。
  4. Xperia mini Pro を普通に起動し、設定→アプリケーション→開発→USBデバッグ、設定→アプリケーション→提供元不明のアプリ、各々のチェックを入れる。
  5. Google USBドライバをインストール済みのパソコンとUSB接続。PC Companion をインストールするかと聞かれたら「スキップ」。
  6. コマンドプロンプトを起動。
  7. 端末がスリープになっていたら起動しておく。
  8. DooMLoRD_v4_ROOT-zergRush-busybox-su.zip を展開したディレクトリに移動し、中のバッチファイル runme.bat を実行。
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\(username)> d:
D:\> cd DooMLoRD_v4_ROOT-zergRush-busybox-su
D:\DooMLoRD_v4_ROOT-zergRush-busybox-su> runme
---------------------------------------------------------------
              Easy rooting toolkit (v4.0)
                   created by DooMLoRD
        using exploit zergRush (Revolutionary Team)
   Credits go to all those involved in making this possible!
---------------------------------------------------------------
 [*] This script will:
     (1) root ur device using latest zergRush exploit (21 Nov)
     (2) install Busybox (1.18.4)
     (3) install SU files (binary: 3.0.3 and apk: 3.0.6)
     (4) some checks for free space, tmp directory
         (will remove Google Maps if required)
 [*] Before u begin:
     (1) make sure u have installed adb drivers for ur device
     (2) enable "USB DEBUGGING"
           from (Menu\Settings\Applications\Development)
     (3) enable "UNKNOWN SOURCES"
           from (Menu\Settings\Applications)
     (4) [OPTIONAL] increase screen timeout to 10 minutes
     (5) connect USB cable to PHONE and then connect to PC
     (6) skip "PC Companion Software" prompt on device
---------------------------------------------------------------
 CONFIRM ALL THE ABOVE THEN
続行するには何かキーを押してください . . .
--- STARTING ----
--- WAITING FOR DEVICE
adb server is out of date.  killing...
* daemon started successfully *
--- creating temporary directory
mkdir failed for tmp, File exists
--- cleaning
rm failed for *, No such file or directory
--- pushing zergRush
1441 KB/s (23060 bytes in 0.015s)
--- correcting permissions
--- executing zergRush

[**] Zerg rush - Android 2.2/2.3 local root
[**] (C) 2011 Revolutionary. All rights reserved.

[**] Parts of code from Gingerbreak, (C) 2010-2011 The Android Exploid Crew.

[+] Found a GingerBread ! 0x00000118
[*] Scooting ...
[*] Sending 149 zerglings ...
[+] Zerglings found a way to enter ! 0x10
[+] Overseer found a path ! 0x000151e0
[*] Sending 149 zerglings ...
[+] Zerglings caused crash (good news): 0x2abcccc4 0x0054
[*] Researching Metabolic Boost ...
[+] Speedlings on the go ! 0x6fd193d3 0x6fd39667
[*] Popping 24 more zerglings
[*] Sending 173 zerglings ...

[+] Rush did it ! It's a GG, man !
[+] Killing ADB and restarting as root... enjoy!
--- WAITING FOR DEVICE TO RECONNECT
if it gets stuck over here for a long time then try:
   disconnect usb cable and reconnect it
   toggle "USB DEBUGGING" (first disable it then enable it)
--- DEVICE FOUND
--- pushing busybox
1816 KB/s (1075144 bytes in 0.578s)
--- correcting permissions
--- remounting /system
--- checking free space on /system
0 KB/s (439 bytes in 1.000s)
--- Free space on /system : 171984 bytes
--- no cleanup required
--- copying busybox to /system/xbin/
2099+1 records in
2099+1 records out
1075144 bytes transferred in 0.483 secs (2225971 bytes/sec)
--- correcting ownership
--- correcting permissions
--- installing busybox
--- pushing SU binary
1389 KB/s (22228 bytes in 0.015s)
--- correcting ownership
--- correcting permissions
--- correcting symlinks
--- pushing Superuser app
2135 KB/s (785801 bytes in 0.359s)
--- cleaning
--- rebooting
ALL DONE!!!
続行するには何かキーを押してください . . .

終わると再起動し、root が取れた状態になっているはず。

ただし上記手順の途中で失敗した時(4.0.2.A.0.62 に対して実行した時など)も最後に "ALL DONE!!!" と表示されるが、途中にエラーメッセージ(ファイルコピー失敗など)が表示されるのでそこで判別できる。

上記手順で root 取得に成功すると、ランチャーメニュー内に "Superuser" が登録されている。

Android 2.3.4 (GB) のまま使うならここまで。
Android 4.0.4 (ICS) にするなら以下に続く。

バックドアを仕掛けてから ICS に更新し root 再取得

引き続き、 xda-developers - [Tutorial]Root.Xperia 4.0.4 ROM [all h/m(dpi)] | 4.1.B.0.431 [23st June](英語) にある手順の通り。 ICS に更新してからでは上記方法で root を取れないので、GB で root を取った上でバックドアを仕掛けてから ICS に更新する方法が案内されている。

前述の通り、現在は取れる方法がある。

なお、以下の手順で 01-local-prop.cmd実行した後は、ICSへの更新が終わるまで端末は正常に起動しなくなるので注意。

(必要な物)

(36KB)
▲スーパーユーザーの要求(例)


(手順)

  1. 予め本体を十分充電しておく。(ACアダプタに接続しながら更新すると不具合が出るかも?)
  2. 端末には microUSB メモリカードを入れておく。(バックアップに使う。今後の通常利用も考えて、ある程度の容量がある方が良い。)
  3. Xperia-ROOT.rev4.zip をダウンロード。最新の rev4 を使うと CWM Recovery も一緒に入るので便利。
  4. Xperia-ROOT.rev4.zip を適当な場所に展開。以下の例では D:\ に展開している。
  5. Xperia mini Pro を普通に起動し、設定→アプリケーション→開発→USBデバッグ、のチェックが入っていることを確認。
  6. Google USBドライバをインストール済みのパソコンとUSB接続。PC Companion をインストールするかと聞かれたら「スキップ」。
  7. コマンドプロンプトを起動。
  8. 端末がスリープになっていたら起動しておく。
  9. Xperia-ROOT.rev4.zip を展開したディレクトリに移動し、中の 01-local-prop.cmd を実行。
  10. 処理中に「スーパーユーザーの要求」が出た場合は「許可」する。
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\(username)> d:
D:\DooMLoRD_v4_ROOT-zergRush-busybox-su> cd \Xperia-ROOT
D:\Xperia-ROOT> 01-local-prop.cmd

Rooting method based on android emulator hack
this script will create /data/local.prop to enable andorid emulator hack

scripted by PuPPeT13th@XDA

special thank to DooMLoRD @ XDA
http://forum.xda-developers.com/showthread.php?t=1601038

please press ENTER key to continue . . .

1. Connect you device using usb cable
2. Make sure USB DEBUGGING was ENABLED
3. Wakeup your device
4. Allow root access if prompted

please press ENTER key to continue . . .


waiting for device . . .
adb server is out of date.  killing...
* daemon started successfully *

checking for rooted device . . .

rooted device FOUND

creating /data/local.prop . . .

power off your device
update your device using :
- Update Service
- PC Companion
- Flashtool

when updating with Update Service/PC Companion
DO NOT factory reset

when flashing with flashtool
UNMARK wipe data

please press ENTER key to exit . . .
  1. 下準備が終わると端末の電源が落ちる。
    なお、この後はICSへ更新するまで端末を起動できない
  2. Flashtool または SEUS を使ってICSへの更新を行う。この時必ず、 SEUSでは「初期化」を選ばない(アップデートのみ行う)こと。 Flashtool では Wipe data のチェックを外すこと。
  3. (60KB)
    ▲SEUS(SUS)の例。「初期化」を選ばない。
    (10KB)
    ▲Flashtoolの例。Wipe data のチェックを外す。
    (24KB)
    ▲左:GBの時の起動ロゴ ▲右:ICSに更新した後
  4. 更新(ファームウェアの書き込み)が無事終わったら、USBケーブルを外し、端末を通常起動。
    ICS にするとロゴが SONY に変わり(右写真)、初回起動時は「Androidのアップグレード中...」表示が出るので終わるまで待つ。
  5. 再起動し、ICSのホーム画面が出てきたら、設定→開発者向けオプション→USBデバッグ、設定→セキュリティ→提供元不明のアプリ、の2箇所のチェックを入れる。
  6. 再びパソコンとUSB接続。PC Companion をインストールするかと聞かれたら「スキップ」。
  7. コマンドプロンプトを起動。
  8. 端末がスリープになっていたら起動しておく。
  9. Xperia-ROOT.rev4.zip を展開したディレクトリに移動し、中の 02-push-root-files.cmd を実行。
  10. 処理中に「スーパーユーザーの要求」が出た場合は「許可」する。
(14KB)
▲ICS起動時のSONYロゴ
これが出たら [Vol Down] 連打
(48KB)
▲CMW Recovery が起動
(9KB)
▲Superuser
(25KB)
▲Android 4.0.4、
ビルド番号 4.1.B.0.431
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\(username)> d:
D:\DooMLoRD_v4_ROOT-zergRush-busybox-su> cd \Xperia-ROOT
D:\Xperia-ROOT> 02-push-root-files.cmd
Root files pusher
Stericson Busybox 1.20.1
nAn CWM Recovery 5.0.2.7

scripted by PuPPeT13th@XDA

1. Connect you device using usb cable
2. Make sure USB DEBUGGING was ENABLED

please press ENTER key to continue . . .


waiting for device . . .
* daemon not running. starting it now on port 5037 *
* daemon started successfully *

checking for root shell

root shell FOUND

remounting system in RW mode
pushing su binary . . .
698 KB/s (22364 bytes in 0.031s)
pushing superuser.apk . . .
1171 KB/s (843503 bytes in 0.703s)
correting permissions . . .
removing /data/local.prop
pushing busybox . . .
2909 KB/s (837928 bytes in 0.281s)
correting permissions . . .
symlinking busybox command . . .
pushing nAa-CWM Recovery files . . .
push: nAa-CWM/sh -> /data/local/tmp/sh
push: nAa-CWM/recovery.tar -> /data/local/tmp/recovery.tar
push: nAa-CWM/cwm-install -> /data/local/tmp/cwm-install
push: nAa-CWM/chargemon2 -> /data/local/tmp/chargemon2
push: nAa-CWM/chargemon1 -> /data/local/tmp/chargemon1
5 files pushed. 0 files skipped.
1765 KB/s (2683714 bytes in 1.484s)
detecting device model . . .
device model=SK17a
installing nAa-CWM Recovery 5.0.2.7 . . .
rebooting device . . .
3
2
1

please press ENTER key to exit . . .
  1. 最後の 3, 2, 1 …の後に端末が再起動するので、USBケーブルを外す。
  2. (Xperia-ROOT.rev4.zip を使った場合のみ)SONYロゴが出たら [Vol Down] キーを連打。
  3. CMW Recovery が起動(右上写真)したら、backup and restore → backup でバックアップを取っておく。この時の操作は、[Vol Up] / [Vol Down] で上下移動、[Home] で決定。
  4. バックアップが終わったら最初のメニュー画面に戻るので、reboot system now で端末を再起動。
  5. ICS が起動。ランチャーメニューの中に "Superuser" がいらっしゃるはず。(右上写真)
  6. (不要であれば)設定→開発者向けオプション→USBデバッグ、設定→セキュリティ→提供元不明のアプリ、の2箇所のチェックを外す。

Xperia-ROOT.rev4.zip を使った場合は CMW Recovery が入るので、今後も設定変更する前はこまめに backup を取っておく。バックアップデータは sdcard/clockworkmod/backup/(日時) に保管(蓄積)され、CMW Recovery から書き戻すことができる。

【参考】

▲目次に戻る▲

スクリーンショット(画面キャプチャ)の取り方

ICSの場合

[電源] + [Vol Down] 同時押し

GBの場合(ビルド番号 4.0.2.A.0.42 以降)

[電源] ボタン長押し→メニュー選択

▲目次に戻る▲

フォントの変更

モトヤフォントを使う(Android 4.0 以降)

日本語に対応しているとはいえ、日本語フォントは含まれていないので、日本語の表示にはCJKフォントが使われる。「中華フォント」などと呼ばれるが、字形には少々違和感がある。

Android 4.0 より日本語専用にモトヤフォントが採用されているが、海外モデルの本機種には含まれていないので、MTLc3m.ttf, MTLmr3m.ttf を Android のソースツリーからダウンロードして /system/fonts/ に置き再起動する(USBデバッグ=下記手順、またはroot対応ファイルマネージャを使っても良い)ことで、モトヤフォントが使えるようになる。

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\> cd C:\Android\android-sdk\platform-tools
C:\Android\android-sdk\platform-tools> adb push D:\MTLc3m.ttf /mnt/sdcard/
C:\Android\android-sdk\platform-tools> adb push D:\MTLmr3m.ttf /mnt/sdcard/
C:\Android\android-sdk\platform-tools> adb shell
$ su
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system
# cp /mnt/sdcard/MTLc3m.ttf /system/fonts/
# cp /mnt/sdcard/MTLmr3m.ttf /system/fonts/
# chown root:root /system/fonts/MTLc3m.ttf /system/fonts/MTLmr3m.ttf
# chmod 644 /system/fonts/MTLc3m.ttf /system/fonts/MTLmr3m.ttf
# sync
# reboot

任意のTrueTypeフォントを使う

(26KB) (26KB)
▲左:DroidSans (CJK font) ▲右:日本語フォント (FontAvenue)

または、Android では TrueType フォントを使えるので(試していないがOpenTypeにも対応していたと思う)、好みのフォントを用意して使うこともできる。その手順(Android 4.0 以降の場合)は下記。

  1. 入れたいフォントファイル (.ttf) を用意
    ※.ttc は .ttf へ変換しておく必要がある。
    ※GBでは名前を DroidSansJapanese.ttf に変える必要があったが、ICSでは任意の名前が使える。
  2. /system/fonts にコピー。コピーする方法はUSBデバッグ (adb push) でも microSD経由でも良い。
  3. /system/etc/fallback_fonts.xml を編集し、フォントファイル名(ここの例では DroidSansJapanese.ttf)を追加。
    ※上から解釈されるため、下の方に追加しても認識されない場合があるので注意。
  4. 追加・変更したファイルは所有者とパーミッションを他のファイルと揃えておく。
  5. 一旦電源を落として再起動するとフォントが反映されている。

以下は、Android SDK の adb (Android Debug Bridge) を使って作業する場合の例。予め 設定→開発者向けオプション→USBデバッグ にチェックを入れておく必要がある。

まずは、端末から fallback_fonts.xml ファイルを取り出す。

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\> C:\android-sdk\platform-tools\adb pull /system/etc/fallback_fonts.xml D:\

取り出した /system/etc/fallback_fonts.xml を編集し、DroidSansJapanese.ttf を追加(追加場所注意)

<?xml version="1.0" encoding="utf-8"?>
<!--
(コメント)
-->
<familyset>
    <family>
        <fileset>
            <file>DroidSansJapanese.ttf</file>	←一番上に追加
        </fileset>
    </family>
    <family>
        <fileset>
            <file>DroidNaskh-Regular.ttf</file>
        </fileset>
    </family>
(略)
    <family>
        <fileset>
            <file>DroidSansFallback.ttf</file>
        </fileset>
    </family>
</familyset>

書き換えたファイルを端末に戻すとともに、フォントファイルを追加し、パーミッションを 644 にする。

C:\> C:\android-sdk\platform-tools\adb push D:\DroidSansJapanese.ttf /mnt/sdcard/
C:\> C:\android-sdk\platform-tools\adb push D:\fallback_fonts.xml /mnt/sdcard/
C:\> C:\android-sdk\platform-tools\adb shell
$ su
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock0 /system
# cp /mnt/sdcard/DroidSansJapanese.ttf /system/fonts/
# chown root:root /system/fonts/DroidSansJapanese.ttf
# chmod 644 /system/fonts/DroidSansJapanese.ttf
# cp /mnt/sdcard/fallback_fonts.xml /system/etc/
# chown root:root /system/etc/fallback_fonts.xml
# chmod 644 /system/etc/fallback_fonts.xml
# sync
# reboot

端末が再起動し、フォントが反映されていれば成功。

この他、ESファイルエクスプローラなどのroot権限に対応したファイラーを使ってコピーし、Jota Text Editor などを使って編集しても良い(この場合は adb の操作は不要)

▲目次に戻る▲
ソフマップ・ドットコム

FOMAプラスエリア対応

<注意>
北米モデル (SK17a, ST15a) が対象。国際モデル (SK17i, ST15i) や S51SE は対応しない。
なお、国際モデル (SK17i, ST15i) ではそのままでSBMのプラチナバンド (band8) に対応するはず。

SK17a の UMTS (W-CDMA) band 5 は、周波数帯としてはNTTドコモのFOMAプラスエリア(Band 6, 19)を内包していることから、ハードウェア的には対応可能で、ファームウェアを書き換えれば動作するのではと考えた先人による試行錯誤の結果、下記の手法が編み出されている。以下、メモ書き。

(必要な物)

(10KB)
▲Flashtool の Tools → Bundle Creation
(10KB)
▲Flashtool の Flashmode → 生成したftfを選択
(21KB) (21KB)
▲ Working Band/s 適用前/後 ▲

(手順)

  1. SK17a の loader.sin を得る。
    loader.sin はGBとICSで共通なので、どちらでも良い。実際に焼いたftfファイルを分解するか、SEUS や PC Companion でアップデートする際にダウンロードできるファームウェアファイル FILE_278020564 を Flashtool のメニュー Tools → Decrypt File すれば得られる。
    ※例: Sk17a_4.1.B.0.431_Generic Trade US.ftf → Sk17a_4.1.B.0.431_Generic Trade US.tgz に名前を変えてから7-Zip等で開く
  2. FOMAプラスエリアに対応した Xperia 国際モデルの ftf ファイルを分解し amss_fs.sin を得る。
    ※例: LT15a_3.0.1.A.0.145_NAM.ftf → LT15a_3.0.1.A.0.145_NAM.tgz に名前を変えてから7-Zip等で開く
  3. 新しいディレクトリを作り、1. と 2. を入れる。
  4. Flashtool を起動し、メニューの Tools → Bundle Creation を選択、3. のディレクトリを開き、Folder list で 3. の2つのファイルを選択し、Firmware content に入れて「OK」を押す。(右上画像)
  5. Flashtool をインストールしたディレクトリ\firmwares\(Device)_(Version)_(Branding).ftf ができる。
  6. 端末の電源を落としておく。
  7. Flashtool の稲妻形のボタンをクリック、Flashmode を選択。
  8. ファームウェア一覧の中に 5. で生成されたファームウェアが入っているので選択し(右画像)「OK」を押す。
  9. 画面の指示が出たら、電源が落ちている状態の端末を、[Vol Down] を押した状態で USB接続。
  10. 書き込みが終わったらUSBケーブルを抜き、端末を通常起動。
  11. 電話アプリを起動し、*#*#7378423#*#* とダイヤル。
  12. Service info → Configuration の Working Band/s: に UMTS_BC6 があれば完了。
▲目次に戻る▲

バッテリードレイン対策

(28KB) (27KB)
▲対策前の電池使用 と 圏外時間100%表示▲
IIJmio モバイルアクセス/D のSIMを使った場合の例

MVNOのデータ専用SIMを使っている時に、圏内認識されず、常に圏外と勘違いして基地局走査を繰り返すために無線回路(Cell Standby プロセス)による電力消費が大きくなる問題の解消方法。NTTドコモ契約のSIM(データプラン契約を含むや、MVNOでも通話・SMSに対応したSIMを使う分には、この対策は不要。

※ドコモのデータプラン契約の場合、SIMは音声契約と同じ物を使い、音声通話は網側で規制しているだけなので、CS/PS両方に対応しており、基地局〜端末間では回線交換 (CS domain) での通信が可能になっているらしい(そのためSMSが使える)。ドコモのデータ契約SIMはプラン変更すればそのまま音声対応になるので、SIM自体がデータ専用になっているMVNOとの違いが生じているのではと推察。
…などと一人で憶測していたが、この辺りはすでにIIJの技術者により検討されていたのを見つけた(その後続報もあり。要はCS不可PSのみの状況を想定していないAndroidの仕様という事ではと。誰かpatch書いてsend-prしてくれ:-)以下に憶測つづき。

#この現象が生じる原因は、海外では一般にデータ専用SIMでは不要な電話番号を割り当てないが、日本ではデータ専用SIM(CSにattachできない)にも電話番号を割り当てており、以前の Android OS では、電話番号を持っているSIMでCSにattachできない状態を異常と判断しているためという見方もあるよう。 ちなみに国内メーカーのデータ専用端末(LifeTouch NOTE など)でも当初この現象が出ていたが、後にメーカーのアップデートにより解消されたものがある。 また、Android 4.4 (KitKat) が搭載された Nexus 5 など最近のグローバル端末では問題が無いようなので、最近のOSでは修正されているのかもしれない。

注記:

本稿執筆以降、OSレベルの変更をアプリから行える Xposed framework と、それを使ってパッチを当てるモジュールが提供されている。

筆者も試してみて、実際にアンテナピクトが出る&セルスタンバイ100%圏外が解消されることが確認できた。

なお、Xposed をインストールすると Segmentation Falut が出て失敗した旨の警告が出るが、そこで案内されている通り、このパッチを入れると解消する。

(これに限らないが、手軽になる反面リスクは大きいので、くれぐれも慎重に、自己責任で。)

対処方法としては、該当処理の設定を直接書き換える方法が有効との事。副作用が出るかもしれないが、今の所、副作用は確認されていない。

(24KB)
▲セルスタンバイ対策後
(設定→電池→セルスタンバイ)


(参考)

上記記事を拝見しながらの作業で概ねOK。注意点は予め CMW Recovery を入れておく必要があることと、Java 関連の操作(動作環境によりパラメータ調整が要るかも)くらいか。

  1. Java (JRE) をインストールしておく。
  2. http://code.google.com/p/smali/ダウンロードより、baksmali, baksmali-1.4.0.jar, smali, smali-1.4.0.jar の4つをダウンロード(2013.04.07補足:baksmali-1.4.2.jar, smali-1.4.2.jar でも可)
  3. ディレクトリを作り(以下の例では D:\framework)、2. のファイルを置いておく。
    baksmali-1.4.0.jar と smali-1.4.0.jar は名前を変える(下記手順)
  4. http://forum.xda-developers.com/showpost.php?p=3864655&postcount=36 より dexopt-wrapper.zip をダウンロード。
  5. 作業用ディレクトリを作り(以下の例では D:\work)、4. のファイルを展開して置いておく。
  6. 以下の手順で操作。
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

D:\> set path=%path%;C:\android-sdk\platform-tools;C:\Program Files\Java\jre7\bin
D:\> mkdir \framework
D:\> mkdir \work
(上記の通り、ダウンロードしたファイルを入れる)
D:\> cd \framework
D:\framework> ren baksmali-1.4.0.jar baksmali.jar
D:\framework> ren smali-1.4.0.jar smali.jar
D:\framework> adb start-server
D:\framework> adb devices
List of devices attached
YT9000****      device	←接続した端末のシリアル番号が表示されればOK


D:\framework> adb pull /system/framework
pull: building file list...
pull: /system/framework/semc_bootinfoif.jar -> ./semc_bootinfoif.jar
(略)
61 files pulled. 0 files skipped.
2790 KB/s (33443704 bytes in 11.703s)

D:\framework> copy framework.jar \work

D:\framework> java -jar baksmali.jar --api-level 14 -o out -c:core-junit.odex -x framework.odex

framework.odex を展開した内容が D:\framework\out ディレクトリ以下に生成されているので、 D:\framework\out\com\android\internal\telephony\gsm\GsmServiceStateTracker.smali をテキストエディタで開いて修正。行番号はずれているかもしれないので参考程度に。

(略)
4515:     :pswitch_data_22
4516:     .packed-switch 0x0
4517:         :pswitch_1c
4518:         :pswitch_1d
4519:         :pswitch_1c	←1dに書き換える
4520:         :pswitch_1c
4521:         :pswitch_1c
4522:         :pswitch_1f
4523:         :pswitch_5
4524:         :pswitch_5
4525:         :pswitch_5
4526:         :pswitch_5
4527:         :pswitch_1c
4528:         :pswitch_5
4529:         :pswitch_1c	←1dに書き換える
4530:         :pswitch_1c
4531:         :pswitch_1c
4532:     .end packed-switch
4533: .end method
(略)

変更したファイルを組み込んで、再度ビルド。 classes.dex を生成する。

D:\framework> java -jar smali.jar -a 14 -o classes.dex out
D:\framework> move classes.dex \work

生成された classes.dex を D:\work\framework.jar の中に追加する。7-Zip などで開いて Drag&Drop が手っ取り早い。または一旦拡張子.zip に変更して展開・再圧縮するなど。

作成した work\framework.jar と dexopt-wrapper を端末に書き込む。

D:\framework> cd \work
D:\work> adb push framework.jar /data/local/tmp/framework.jar
2619 KB/s (4066199 bytes in 1.515s)
D:\work> adb push dexopt-wrapper /data/local/tmp/dexopt-wrapper
344 KB/s (5512 bytes in 0.015s)

D:\work> adb shell
$ cd /data/local/tmp
$ chmod 755 dexopt-wrapper
$ ./dexopt-wrapper framework.jar framework.odex
--- BEGIN 'framework.jar' (bootstrap=0) ---
--- waiting for verify+opt, pid=2471
--- would reduce privs here
--- END 'framework.jar' (success) ---
$ busybox dd if=/system/framework/framework.odex of=framework.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
20+0 records in
20+0 records out
20 bytes (20B) copied, 0.001343 seconds, 14.5KB/s
$ su
# mount -o remount,rw /dev/block/mtdblock0 /system
# mv /system/framework/framework.odex /system/framework/framework.odex.bak
# cp framework.odex /system/framework/framework.odex
# chmod 644 /system/framework/framework.odex
# rm framework.odex framework.jar dexopt-wrapper
# sync
# reboot

端末が再起動し、SONY ロゴが表示されたら [Vol Down] ボタンを連打し CMW Recovery を起動。wipe cache partition を実行。さらに advanced→Wipe Dalvik Cache を実行。これらが終わったら最初のメニューに戻り reboot system now。無事再起動すれば、アンテナピクトが表示されるようになるはず。

なお、何かあった時に戻せるよう、元の framework.odex(.bak) は保管しておく方が良い。

【参考】

「緊急通報のみ」について

国際端末をSIM無し、またはデータ専用SIMで起動すると、「緊急通報のみ」という表示が出る。海外ではSIM無し、またはSIMがあってもそのキャリアの電波が来ていないなどで網に接続していない状態でも、他キャリアの電波が来ていれば、それを使って緊急通報する仕組みがあるとの事。

しかし日本国内では、下記参考資料1で「現在の日本国内法令においては、非アタッチ状態での電波の送出は認められていないため、非アタッチ状態での緊急通報機能は求められていません。」とあるので、ネットワークにアタッチ(網に接続)していない(つまりSIMなし)状態では緊急通報できないのかもしれない。

データ専用SIMは網に接続してはいるが、CS domain(回線交換)には接続しておらず、緊急通報は出来ないのかもしれない。一方、SMS対応SIMを使うと CS domain にも接続できるが、このとき緊急通報はどうなるのか。試してみるわけにもいかないので、憶測するしかないが…

【参考資料】

  1. 携帯電話の緊急通報に関して - JATE (PDF 1MB)
  2. てくろぐ ≫ アンテナピクト問題・セルスタンバイ問題とは何か
  3. 3G TS(技術仕様書) 23.002 V3.3.0 (2000-03) (PDF 185KB)原文
  4. Long Term Evolution (LTE) 技術概要 - Motorola (PDF 505KB)
  5. 総務省|安全・信頼性の向上|緊急通報の機能
  6. ブローヴちゃん: Android + データ専用 SIM で「緊急通報のみ」を消す
  7. 緊急通報とローミング | 無線にゃん
▲目次に戻る▲

build.prop 設定変更

「魔法の5行」

これも多くの先達の経験則から、設定ファイル /system/build.prop をこのように書き換えると端末のパフォーマンスが上がる等の情報交換の結果、「魔法の5行」と呼ばれているらしい。当初は5行だったようだが今はもっと増えていると。

端末から /system/build.prop を取得し、下記の記述を加えて端末に書き戻す。 すでに同じ値が定義されている場合は行頭に # を付けてコメントアウトしておく。

書き換えるファイルのコピーは adb でもいいし、microSDからESファイルエクスプローラ等でコピーしてもOK。

書き戻したら /system/build.prop のパーミッションが 644 になっているか確認。なっていなければ書き換える。そして端末再起動。

## Magical 5 Lines
ro.ril.disable.power.collapse=1
	# 1= アイドル時に低電力モード(だと思われる)
ro.ril.oem.ecclist=110,118,119
	# 緊急通報リスト
ro.ril.enable.a52=0
	# A5/2無効たぶんGSM用
ro.ril.enable.a53=1
	# A5/3有効
ro.ril.hsdpa.category=8
	# 8は7.2Mbit/s 10で14.0Mbit/s(FOMAプラスエリア最高速)
ro.ril.hsupa.category=5
	# 5は2.00Mbit/s 6の5.742 Mbit/s(FOMAプラスエリア最高速)にしてるひともいる
ro.ril.hsxpa=2
	# 0= UMTS r99 1=HSDPAのみ 2=HSDPA/HSUPA 1にしてる人もいるけど、通信エラーとか
ro.ril.fast.dormancy.timeout=3
	# 通信のタイムアウト

# for Japan docomo
ro.ril.enable.dcm.feature=1
	# FOMAプラスエリア設定
ro.ril.disable.fd.plmn.prefix=44010
	# 以下の通信業者のうち、数字で指定した物を除外する (44010 Japan DoCoMo)

# for Japan softbank
#ro.ril.enable.sbm.feature=1
#ro.ril.disable.fd.plmn.prefix=44020

ro.ril.enable.sdr=0
	# SDR(Software Defined Radio)を無効
ro.ril.oem.mosms.mode=1
	# ソフトウェア無線を無効にする
ro.telephony.default_network=2
	# 0=WCDMA優先 1=GSMのみ 2=WCDMAのみ 3=WCDMA/GSMの強いほう 4=CDMA/EVDO
ro.ril.def.agps.mode=2
	# 2は不確定なAGPSを許可する
ro.ril.def.agps.feature=2
	# 2はAGPSモード?

上記は 【ROOT必須】魔法のコードでXperia Active(4.0.2.A.0.62→4.0.2.A.0.42)とSony Tablet Pの待機電力改善 | 雑記帳 さんの記述を拝借したもの。コメントを参考にしつつ、ちょうど良いパラメータに調整していく。

なお、root対応テキストエディタで直接 /system/build.prop を開いて書き換えてみたが、うまくいかなかった(検証不足)。 毎回コピー→書き換え→書き戻し→再起動は、ちょっと面倒かも(^^;。

【参考】

カメラのシャッター音を消す

/system/build.prop を開き、次の1行を探し、数字を0にする。

ro.camera.sound.forced=1	←0に書き換える

/system/build.prop を書き戻して再起動すると、シャッター音OFFが選べるようになっているはず。

【参考】

FMラジオを使えるようにする

custom_settings.xml という名前で下記内容のファイルを作る。文字コードはUTF-8で保存。

<?xml version="1.0" encoding="UTF-8"?>
<settings version="1">
	<setting key="frequency-band" runtime="false">Japanese</setting>
	<setting key="frequency-least-step" runtime="false">100</setting>
</settings>

このファイルを /system/etc/customization/settings/com/sonyericsson/fmradio/ に置く(fmradioディレクトリは無ければ作成)。ディレクトリのパーミッションは 755、ファイルのパーミッションは 644。

【参考】

▲目次に戻る▲
ソフマップ・ドットコム オンライン動画や音楽などを、テレビでかんたんに楽しもう。「Google Chromecast」

キーボードの配列を替える

Xperia mini Pro SK17a/i (WH) キーボード (30KB)

キーボードは北米仕様(国際モデルでは英国、中国、ドイツ、ロシアなどがあるらしい…)なので、¥ など日本で使う文字に入力できないものがある。また、ローマ字入力の長音記号「ー」を入力する際に使う - が入力しづらい位置にあるなどの問題もある。

そこで、キーに対応する文字を入れ替えて使いやすいようにする。

/system/usr/keychars/pm8058-keypad.kcm を書き換えればOK。GB ではバイナリデータだが、ICSではテキストエディタで書き換え可能。中身はこんな感じ。

# Copyright (C) 2010 The Android Open Source Project
# Copyright (C) 2011 Sony Ericsson Mobile Communications AB.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# NOTE: This file has been modified by Sony Ericsson Mobile Communications AB.
# Modifications are licensed under the License.

type ALPHA

key A {
	label: 'A'
	number: '\t'
	base: 'a'
	shift, capslock: 'A'
	alt: '\t'
	shift+alt, capslock+alt: none
}
(以下略)
【書き換え例】
 [Alt]  + [S] → {
 [Alt]  + [D] → "
 [Alt]  + [F] → '
          ['] → -
[Shift] + ['] → =
 [Alt]  + ['] → _
[Alt] + [Enter] → |
 [Alt]  + [Z] → }
 [Alt]  + [C] → ^
 [Alt]  + [V] → \
 [Alt]  + [N] → [
 [Alt]  + [M] → ]
          [?] → /
[Shift] + [?] → ?
[Shift] + [@] → ~
[Shift] + [,] → <
[Shift] + [.] → >

こんな感じのファイルなので、元の記述を参考にしつつ、好きなように入れ替えればOK(既存の記述を置き換えていく)。 なお、[Alt] は左下の青い■ボタン。[Shift] + [Alt] は認識しないよう。

例として、右のように書き換えた pm8058-keypad.kcm ファイルを置いておくので、参考までに。

書き換えが終わった pm8058-keypad.kcm ファイルは /system/usr/keychars/ に書き戻す。パーミッションは644。

このファイルの書き方が間違っているとキー割り当てが有効にならず、書き換えていない状態に戻ったり、入力ができなくなる場合があるので、元の pm8058-keypad.kcm ファイルを保存するとともに、キー入力できなくなった場合はUSBデバッグを有効にして、パソコンから元のファイルを書き戻して再起動すれば、元に戻る。

【参考】

▲目次に戻る▲

消せないアプリの削除方法

Google Play(旧Androidマーケット)から入れたアプリは設定からアンインストールできるが、最初から入っていたアプリを中心に、アンインストールできない物がある。消すとシステムの動作がおかしくなる物もあるが、中には全く要らない物もあるので、明らかに要らないと分かる物を消す方法。

消せるアプリは /data/app/ に、消せないアプリは /system/app/ に入るので、/system/app/ に入っている *.apk ファイルから消したい物を選び、/data/app/ に移しておくと、設定→アプリ よりアンインストールできる。

ただし、system に入っているアプリの中には、一旦消すと再度入手できない物もあるので、予めバックアップを取るとともに、消す前に .apk ファイルを sdcard にコピーしておくと良い。

消してみて今のところ問題ないアプリ例

参考、アプリ名の対応

▲目次に戻る▲

Flashtool

(24KB)
▲左:GBの時の起動ロゴ ▲右:ICSに更新した後

文鎮化したら!?

通常、本機は電源を入れるとバイブが震え、起動が始まったと分かる。その後しばらく待つと右写真のようにSONYロゴ(GB では Sony Ericsson ロゴ)が出て、次に XPERIA ロゴへと進む。ここまで来ると一安心、Android OS の起動を待つのみとなる。

ところが、筆者はここに書いた作業をしている間に2度ほど遭遇したが、右写真のSONYロゴが出た後で止まってしまう(または再起動→SONYロゴ、を繰り返す)状態になってしまうことがある。本機のファームウェア書き換えに失敗したり、Android OS の起動に必要なファイルが壊れてしまったような状態と考えられる。

こういう時は焦らず、一旦電池を抜いて電源を切り30秒ほど待つ。その間に microSD カードを新しい物に入れ替えるとともに、Windows パソコンに Sony Ericsson Update Service (SEUS) をインストールして起動し、指示に従って更新をかける(初期化するか問われたら初期化する)と、大抵は元に戻る。

ところが、SEUS を使って初期化すると root が取れない状態になるので、root 取得が必要なら、4.0.2.A.0.58 以前の ftf ファイルを手元に用意しておく方が良い。 もっとも、SK17a 用の ftf ファイルは入手しにくいようだが…

また、システムが壊れて初期化した場合でも、CMW Recovery でバックアップを取ってあれば、一旦初期化した後で書き戻すことができる。バックアップを取ってある場合は、新しい microSD カードを用意して clockworkmod ディレクトリ内の最新のバックアップをコピーしておき、その microSD カードを挿した状態で本機を初期化、root再取得&CMWインストールをすると良い。バックアップを書き戻した後で元の microSD カードに戻せば、バックアップ前の概ね近い環境が戻ってくる。設定を変える前は必ずバックアップを取るようにしたい。

電池を入れて電源ボタンを押してもバイブが震えない、SONYロゴ(または Sony Ericsson ロゴ)が出てこないといった状況になった場合は、電池を抜いて何時間(または何日)か寝かせた後、電池を入れ、[Vol Down] を押しながらパソコンとUSB接続してみる。この時に画面左上の緑色LEDが点灯すれば、ファームウェア書き込みできる可能性があると思われる。

(44KB)
▲PC Companion でダウンロードしたファームウェアファイル
(47KB)
▲Flashtool の Tools → Decrypt Files

ftfファイルの作り方

最新のファームウェアファイルは Sony Ericsson Update Service (SEUS)PC Companion (PCC) の更新・初期化処理を使ってダウンロードすることができる。

SEUS または PCC で更新・初期化を行うと、最初にファームウェアがダウンロードされるので、ダウンロードされたファイル3つを保管しておき、Flashtool で展開し、書き込む時に使うftfファイルへと再構築することができる。

例えば、SK17a の Android 2.3.4 (GB) ビルド番号 4.0.2.A.0.62 では、FILE_278539386 と FILE_278542291。同じく Android 4.0.4 (ICS) ビルド番号 4.1.B.0.431 では、FILE_279010966 と FILE_279011613。加えて、OSバージョンにかかわらず共通のloaderが収められている FILE_278020564 も必要。

SK17a と SK17i は無線通信部分のファームウェア(ベースバンド)が異なるので、自分が使っている端末のファームウェアはダウンロードしておくと良い。

タッチパネルが動作しない!?

筆者は幸い遭遇したことがないが、ROM焼きで間違えるとタッチパネルが動作しなくなる不具合が出る場合があるらしい。xda-developers で対策方法が紹介されているので参考に。

▲目次に戻る▲

SK17a を 4.1.B.0.587 へ更新

(25KB) (25KB)
▲SK17iのROMを焼いてみた      
  build.propを書き換えてSK17aと表示▲

SK17a に来るOTAアップデートの告知は GB の 4.0.2.A.0.62 止まりだったが、ちょうど設定を間違えて再構築することになった端末があったので、SK17i 4.1.B.0.587 のファームウェアを使って再構築してみた所、従来と同じ方法で root を取ったまま更新できた。

手順は、SK17i をSEUS/PCCでアップデートするなどで公式ROMを取得し、Flashtoolを使ってSK17aに焼き込む。焼くときにベースバンドを除外する(こうするとベースバンド部分のみ SK17a 公式ROMの物が使われる)ST15用など他機種のファームウェアはベースバンド以外にも違いがあるのでSK17に焼いてはいけない(少なくともキーボードは使えなくなると思われる)

筆者が試した範囲では、SK17a に SK17i のファームウェアを使っても目立った実害は無さそうで、セルスタンバイ対策やプラスエリア対応もでき、/system/build.prop を書き換えれば表示を SK17a に変えることも可能。 (とはいえ、あくまで自己責任で。)

注意点は、4.1.B.0.587 を書き込んだ SK17a で SEUS を動かすと「ご使用の携帯電話で使用できるソフトウェアはありません。」と表示され、強制初期化も出来なくなる(4.1.B.0.431 の時は「お使いの携帯電話に新しくインストールできるソフトウェアはありません。」と表示され、同じバージョンを上書きインストールする選択肢が現れる)ので、予め SK17a 用の公式ROMを保存しておきたい。

【参考】

4.1.B.1.13

SK17i の 4.1.B.1.13 というビルド番号のファームウェアが2012年12月にPTCRB認証を通過しているが、1年待っても Update が来ないまま。

ソースコードを比較して見てみたというこちらの方によると、今回の修正は

とのこと。修正時期からも、おそらく Android OS に含まれる Apple WebKitWebView クラスに含まれるセキュリティホールを塞ぐための更新と考えられる。

これは標準Webブラウザを含めた脆弱性を含むWebブラウザで特定のWebサイトを表示するだけでファイルのダウンロードや実行をさせることができるという深刻なセキュリティホールのようで、1年ほどの対応期間を置いて2013年12月17日に一般向け公開され、18日に記事が出ているので、詳しくは記事を参照:

つまり、悪意あるWebサイトをうっかり開いただけで、何をされてもおかしくないということ。

Sonyには更新の早急な配信を望む一方、更新が来るまでは、標準ブラウザやそのwrapperでしかないブラウザは使わないようにする必要がありそう。と言っても、そう簡単な話でもないが…

Android のWeb関連処理の大部分は Apple Webkit 由来のcodeで動いている状況かと思われ、単純に Webkit を極力避けるという観点でいくなら Gecko を採用している Firefox を使うのが良いとなるが(そのぶんファイサイズが大きく、動作も重い)、どこまでがOS由来で、どこからがスタティック・リンクなのかは各アプリの実装次第だし、しかも今回はIntentの問題などもあるようで、広くOSに引っかかるような気もするが、今回の不具合の影響範囲は正直よくわからない。

少なくともOS内蔵WebKitのwrapperでしかないようなブラウザは標準ブラウザと変わらない(今回の脆弱性の影響を受ける)可能性が高いと言えるものの、独自実装の Firefox や、ある程度独自で持っている(というか当時の WebKit から分派して Blink になっているが)Chrome や Opera については、影響を受けないような気がするが、そう言いきれないのがもどかしい。

そもそもろくに調べていない筆者の怠慢はともかく、こういう判断は一般の利用者に委ねる部分ではなく、端末メーカーからの速やかなUpdate提供を期待したい所。

【参考】

カスタムROMを使う

メーカー公式対応は Android 4.0.4 (ICS) までだが、メーカー公式に bootloader unlock の手段が用意されており、有志より提供されているカスタムROMを自己責任で使う方法もある。

Xperia シリーズの2011年モデルはカスタムROMが比較的豊富に提供されており、例えば LegacyXperia Project からは、CM10.1 (Android 4.2 "Jerry Bean") 安定版、CM10.2 (Android 4.3 "Jerry Bean") 安定版、およびα版ながら最新の CM11 (Android 4.4 "KitKat") まで提供され始めている。(2014年2月時点)

Xperia のカスタムROMに関する情報は xda-developers forum(英語)に集まってくる。

【関連情報】 Android 設定備忘録 Xperia mini Pro SK17a (4.4 = KitKat)

▲目次に戻る▲

EMOBILE Sony Ericsson mini S51SE

Sony Ericsson mini S51SE (WH) 外観 (24KB)
(25KB)
▲S51SEにICSを導入
(20KB)
▲Service info

最新の公式ROMは Android 2.3.4、ビルド番号 4.0.2.A.0.74。 公式にはICSへのアップデートは無い。

対応バンドは W-CDMA Band 1, 9。EMOBILE HSPA と、NTTドコモ FOMAメインエリア(2100MHz)、東名阪バンド(1700MHz)に対応する(プラスエリア(800MHz)には対応しない)。 GSM部分(国内では使われない)は ST15i と同じ。 SIMフリー(SIMロック無し)

ドコモやそのMVNOを使う場合、プラスエリアが使えないのでビル内や山間部には弱いが、大混雑でパケ詰まりが常態化しているFOMAメインエリアだけでなく、対応端末が少なくて空いている東名阪バンドも使え(ただし2014年6月時点ではまだ使えているようだが、一部地域ではすでに全帯域がLTEに転換されており、今後もLTEの主要バンドと位置づけられているようなので、2014年度中に始まる LTE-Advancedにあわせて、近々LTEに転換されてしまうかもしれない)、もちろんイーモバイル3G回線も使える。大都市圏の屋外利用が中心の用途ではむしろ有利な機種かもしれない。

当時のEMOBILE端末はSIMロックされておらず、GSM(850,900,1800,1900)にも対応しているので、アジア・欧州向け海外旅行用端末(現地SIMを使う)としても便利かもしれない。

外観は、ST15 (Xperia mini) とは画面の大きさも同じで、保護フィルムなど共通に使える。 SK17 (Xperia mini pro) とは画面の大きさや裏蓋の仕様、ヘッドホン端子の位置などが異なるので注意。

SK17 にはフロントカメラが付いているが、ST15/S51SE には無い。(筆者は使わないので、むしろ無い方が良いが。)

電池パックや充電器は SK17/ST15/S51SE で共通。

ファームウェア(ROM)は、ST15との違いはベースバンドや日本語フォント、build.prop、Pocket WiFi ウィジェットなどのプリインストールアプリくらいだと思われる。SK17 とはキーボードやカメラなども異なる。

root取得

公式ROMの最新版 (4.0.2.A.0.74) では rootを取れない。 一旦以前のファームウェア(4.0.2.A.0.61 または 4.0.2.A.0.9)に書き戻してから上記SK17と同様の手順で root を取るか、またはICS化するつもりなら先にICSのROMを焼いてからroot取得ができるようになっている。 筆者が試した範囲では、

にある Eroot_V1.3.4.exe を使い、4.1.B.0.587 のrootを取得を確認できた。 (ちなみに、Eroot_V1.3.4.exe を使っても 4.0.2.A.0.74 はroot取得できなかった。)

ICS化

対応バンド以外は、キーボード無しの国際モデル ST15i (Xperia mini) と同等。ST15i/a を持っていれば公式ROMをダウンロードできるので、それを S51SE に焼くと、S51SE を ICS 化できる。 その場合は予めS51SEの公式ROMを保存すること(後で何かあった時に戻せるように)と、ベースバンド部分を上書きしないよう注意すること(ベースバンドは S51SE 用最新ROMを事前に焼いておけば、それが使われる)

一旦ICSを書き込むと、以降公式 Update Service が使えなくなるので、必ず事前に公式ROMを保管しておくこと。

ST15 と S51SE の違いは、機種名や緊急通報番号などの設定(Build.prop書き換えで対応可)、APN(設定可)、Pocket WiFi ウィジェット(テザリング自体はOS標準機能でできるが、ウィジェットが必要なら類似アプリを探して使う。例えばこれこれは動作した)emobileメールまたはemobileメッセージ(旧EMnetメール)(Google Play からダウンロードできる)。いずれも簡単に対応できる範囲かと。

【関連情報】 EMOBILE 3G APNの設定Sony Ericsson mini EMOBILE S51SE - きまぐれ手記

カスタムROMを焼いて KitKat を動かす

カスタムROMを焼く場合(元々ベースバンドは含まれないので公式ROMに上書きして使う)は ST15i (smultron) 用を使う。S51SE も Bootloader unlock allowed になっており、SK17 と同じ要領でできる。

【関連情報】 Android 設定備忘録 Xperia mini Pro SK17a (4.4 = KitKat)

▲目次に戻る▲
ソフマップ・ドットコム

その他・雑感

SMS/MMS

SMSは、NTTドコモ(SMS付きのMVNOを含む)、ソフトバンクモバイル、イーモバイルいずれも標準対応。

MMSは、ソフトバンクモバイルではS!メールSoftBankメールを使う場合はバージョン2.5以前が必要らしい)が対応。 イーモバイルではemobileメッセージが対応EMnetの契約とAPNの設定が必要)NTTドコモは未対応iPhoneの取り扱いに伴い準備するという話はあったが…)APNの設定などは契約回線に合わせて別途必要。

テザリング

筆者が試した範囲では、国際モデル用ICS公式ROMの標準機能で使えている。 WPA2 PSK に対応。ただしTKIPは使えずAESのみ。 当然ながら使用中は電池消費が増え、筐体が若干熱くなる。

テザリングを有効にすると「ネットワークエラー」が発生する場合は、一旦無効にしてからAPNの設定を開き、APNタイプに tether を追加する。

一部、設定ファイル /system/etc/customization/settings/com/android/settings/custom_settings.xml の書き換えが必要という情報があるが、T-Mobile云々とあるので北米モデルのみ?詳しくは下記の記事を参照。

文字入力

日本語入力は POBox をそのまま使っている。少々癖はあるがATOKほどではなく、まあまあ使いやすい。英字入力でも予測変換が出てしまう(無効にできない)のは煩わしいが、日本語の変換は概ね快適。

通知欄に a/あ 表示が出ている時は POBox での入力になっている。 戻るボタンを押すと POBox が無効になる(ソフトキーボードが出ている時は戻るボタンで消すことができる)。 文字入力できる場所をタップすると POBox が有効になる。

日本語/英字の切り替えはハードウェアキーボードのEnter下の地球を模したボタン。記号入力は左下の[Sym]ボタン。 [メニュー] + [A] / [X] / [V] で全選択/切り取り/貼り付けができるのは便利。

A-GPS (Assisted GPS)

/etc/gps.conf を見れば分かるように、国際モデルおよび S51SE には予め supl.sonyericsson.com が設定されており、特に設定変更なく A-GPS を使うことができる。

国際モデルおよびEMOBILEの端末については、NTTドコモが販売する端末にありがちな、SPモードを使わないと A-GPS が動かなくなるといった不具合はない(ただしNTTドコモの基地局情報に基づくアシストデータは得られない)

【関連情報】 A-GPS - きまぐれ手記

充電池(電池パック)と充電器

純正品の型番は EP500。Li-Polymer、3.7V min.1160mAh 4.3Wh。中国製。 Xperia mini (ST15a/i)、mini Pro (SK17a/i)、Active (ST17a/i)、Sony Ericsson mini (S51SE) で共通。

Amazon で「Sony Ericsson 純正バッテリー EP500 For Xperia mini (ST15i) イーモバイル ST15i バルク品(簡易包装)」を購入。送料込940円、販売元はBSショップ。裏面の解説は中国語(国際モデルの純正品も同様)。見た目にはよく似ているが微妙に違う所もあり、純正品かの見分けはできないが、使っていて不具合は特に無い。

EMOBILE S51SE に付属の電池パックは、裏面の解説は日本語表記になっている(製造は中国)。 EMOBILE での商品名は「電池パック PBS51SEZ10」。確実に純正品だろうが、けっこう高いヨドバシカメラで4670円公式オンラインストアで4676円

充電器は Sony Ericsson 純正品は EP900。これは microUSB 接続で充電するもので、ACアダプタは別売(本体付属品が使える)。筆者は並行輸入品を購入し WILLCOM 03 用のACアダプタ(microUSB、5V 1A)やモバイルバッテリーにつなげて使っているが、問題なく充電できる。 並行輸入品(保証無し)が Amazon で 1,000円SONY公式通販では 2,280円で販売されている。無問題のバルク品(送料込2163円)は時々入荷しているよう。

ACアダプタ

北米モデル (SK17a) に付属のACアダプタ EP800 は、出力は DC5V 850mA。USB Aジャックが付いており、付属のUSBケーブルをつないで使うようになっている。 入力側は AC100〜240V に対応。コンセント形状は日米共通なのでそのまま使える。

また、WILLCOM 03 用のACアダプタ(microUSB、5V 1A)や、定評あるAnkerの充電器でも問題なく充電できている。

国際モデル (SK17i) を買うとその国のコンセント形状の物が付いてくるが、電源プラグ変換アダプタを用意するくらいなら、手持ちのACアダプタを試してみるか、廉価な市販の microUSB 1A出力のアダプタを試してみても良いかも…

もっとも、EP800(ACアダプタ)+EC700(USBケーブル)セットが Amazon で単品 1000円で売っているようなので、手持ちに無ければ純正品を買ってもいいかもしれない。auポイントがあれば au Online Shop で純正USBケーブル付きを 2300ポイントで売っている。イーモバイルでは3348円

なお、本体側の不具合または仕様なのか、スリープ状態でACアダプタをつないだり、先にUSBケーブルをつないで電源を後からつないだ場合に、うまく充電できないことがある。その場合は一旦USBケーブルを外し、スリープを解除してから再接続すれば充電できる。

USB端子フタ

使っているうちに外れてしまうことがあるが、無問題で購入できる。ST15i/a/S51SE 用は 515円。しかしSK17用は無くなってしまった。ドイツの通販業者があるがいい値段

SIMカードスロット(microSIM, nanoSIM アダプタ)

SIMカードスロットは標準サイズ。 SK17 のSIMスロットはバッテリの下にあり、端子部が下向き。ST15/S51SE はそれほどでもないが、SK17 はSIMカードを曲げながら抜き差しする格好になるので、下手なアダプターを使ってスロット破損等を起こさないよう注意が要る。

あきばお〜で買った安物アダプタ(と言っても250円くらいしてる)では途中で引っかかって抜けなくなりそうで使えなかった。 筆者が試した範囲では、 無問題で買った「SONY純正 マイクロSIMカード変換アダプタ 2枚セット」送料込400円 が価格も安く、使いやすかった。ただし今では入手困難…

後継機

どうもキーボード付き後継機は当分出そうにないらしい…? 単に小さい機種でいいのなら Xperia active (ST17)Xperia tipo (ST21) / tipo dual (ST21i2)Xperia SX (SO-05D) などが出ているが…

謝辞、おことわり

残念ながら国内では販売されていない、小型で便利な端末ですが、日本語に対応しているとはいえ、便利に使えるようにするには相応のノウハウが要ります。 Xperia は Flashtool や Rootkit などに始まり、セルスタンバイ対策のようなOS内部に踏み込んだものまで、様々なノウハウを調査してWeb等で提供し、あるいは整理・蓄積してくれた皆様のおかげで、特段の難もなく便利に使うことができていることに、この場を借りて感謝申し上げます。

なお、本稿は、先達による様々な調査検証の結果はあれど、それが新旧入り混じり散在していることから、個人的に調べ試した結果を忘れないうちに整理してまとめたものです。それ以上の意味はありません。海外端末の利用を推奨するものではなく、あくまで個人的な備忘録として整理したものなので、中には間違いや過不足等あるかもしれませんが、予めご承知おきください。

▲目次に戻る▲

改版履歴

2014.06.29
前回更新漏れの追補、取扱店を削除(もう入手困難なので…一部の中古店とオークションで時々扱いがあるくらい?)
2014.06.26
EMOBILE 3G APNの設定を移動、rootkitセルスタンバイ対策の執筆後情報に関する注記を追加
2014.06.25
EMOBILE Sony Ericsson mini S51SE を項目独立させ補記、A-GPS (Assisted GPS) を追記、付属品関係のリンク更新
2014.06.14
最近の情報をいくつか補記
2014.03.10
フォントの変更を「モトヤフォントを使う」と「任意のTrueTypeフォントを使う」に分割
2014.02.22
カスタムROMを使う関連の追記
2013.12.22
4.1.B.1.13 を追記
バッテリードレイン対策にSMS対応SIMなど追記
2013.04.07
4.1.B.0.587 の ftf イメージを使ってのICS化を確認できたので追記
ftfファイルの作り方を追記
フォント変更でモトヤは設定不要の旨追記
baksmali/smaliでdeodex/odex化する時の補足とパラメータ修正
pm8058-keypad.kcm 書き換え例を追加
2012.10.29
バッテリードレイン対策に補記、画像等追加
2012.10.26
緊急通報等を追記、Flashtool を追加(途中)
2012.10.25
その他を追加
2012.10.22
画像等追加して掲載
2012.10.10
初版

更新日 : 2014年07月06日 (113841)

CORY's twilight zone > Android 設定備忘録 > Xperia mini Pro SK17a (4.0.4 = ICS)


« 短絡線 »
[ CORY's twilight zone | PC-98, FreeBSD(98), Mac OS X, Android | 鉄道・街 | 自然 | flickr | twitter (log) | YouTube | Contact ]

Copyright © 1996-2018 CORY / ISAKA Yoji. Some rights reserved:
Creative Commons Attribution-Noncommercial-Share alike 2.1 Japan.