Xperia pro(MK16i)へのClockworkModの導入2012/01/29 14:29

CWM(ClockWorkMod Recovery)は、Xperia単体で本体ソフトウエアのバックアップが
取れる便利なツールである。「Xperia CWM Auto-Instaler」(Andriodアプリ)が登
場して、CWMの導入が簡単に行えるようになったはずだが、これ、mini proでは使
えるが、proはサポート外と言われて使えない(本文を執筆時点で)。仕方ないので、
CWMを手動で導入することにする。

※注意事項
  以下、すべて自己責任で行うこと。端末が動作しなくなったり、何らかの動作不
  良となった場合でも、一切の保証は行わないので、そのことを了承した上で操作
  する事。
  Linuxのコマンドレベルでの操作となるので、Linuxの知識が無い場合は、事前に
  良く勉強しておく事。


1)CWMの入手
  以下のサイトから、CWMを入手する。

  [RECOVERY][14/11/11] 5.0.2.7-nAa-r2 ClockworkMod for Stock Xperia Mini/Pro/Active/Arc
    http://forum.xda-developers.com/showthread.php?t=1345741

  ここの
    Installation
    Download CWM from here and extract its contents.
  の所から、「CWM-5.0.2.7-nAa-r2.tar」をダウンロード。

  これを展開すると…
    system/bin/chargemon
               charger
               recovery.tar
           xbin/sh
  以上の4つのファイルが出てくる。
  これらを、microSDカードにコピーして、Xperia proに持っていく。以下、説明の
  都合で、4つのファイルともにmicroSDカードのルートフォルダーに入れたものと
  して説明する。

2)準備
  先ず、Xperia proは、事前に「root取り」を行っておく。やり方は、以下を参照
  の事(ブートローダーのアンロックは不要!)。

  [NEW][26/OCT/2011][ROOTING] Xperia 2011 Easy Rooting Toolkit [v1.0](zergRush Exploit)
    http://forum.xda-developers.com/showthread.php?t=1320350

  なお、本体のソフトウエアがビルド番号4.0.2.A.0.58まではこれでrootが取れる
  が、最新(2012/01/28時点)の4.0.2.A.0.62に上げてしまった場合はrootが取れな
  くなるので、要注意だ。上げてしまったら、ブートローダーのアンロックとかで
  rootを取るとか、自力で解決するしかないだろう。

  端末エミュレータもインストールしておくこと。マーケットから以下のアプリを
  インストールしておく。
    Android Terminal Emulator

3)CWMの導入
  Xperia proで、端末エミュレータを起動して以下のコマンドを実行する。なお、
  「$ 」や「# 」は、シェルが表示するプロンプトなので、入力しない事。

    $ su
    # mount -o remount,rw /dev/block/mtdblock0 /system
    # mv /system/bin/chargemon /system/bin/chargemon.org
    # cp /sdcard/chargemon /system/bin/chargemon
    # chmod 755 /system/bin/chargemon
    # chown root.shell /system/bin/chargemon
    # cp /sdcard/charger /system/bin/charger
    # chmod 755 /system/bin/charger
    # chown root.shell /system/bin/charger
    # cp /sdcard/recovery.tar /system/bin/recovery.tar
    # chmod 755 /system/bin/recovery.tar
    # chown root.root /system/bin/recovery.tar
    # mv /system/xbin/sh /system/xbin/sh.org
    # cp /sdcard/sh /system/xbin/sh
    # chmod 755 /system/xbin/sh
    # chown root.root /system/xbin/sh
    # reboot

  以上で、再起動して正常に立ち上がればCWMの導入は成功だ。立ち上がらないよ
  うなら、SEUSで再初期化して復旧させる等、自力で解決する事。

4)CWMの起動
  Xperia proの電源を切って、再起動する。「Sony Ericsson」のロゴが出ている
  間に、画面を何度かタッチする。そうすると、CWMのメニュー画面が表示される。
  CWMの使い方は、いろいろなサイトで解説されているので、それらを参考にする
  こと。
  なお、CWMの入手先(xda-developers)には、「ボリュームダウンのボタンを何度
  か押す」という記載があるが、それだと起動できなかった。


Xperia pro/mini proで日本語と絵文字のフォントを導入する2012/01/29 14:01

Xperia pro/mini proは、そのままでも日本語表示はできるが、漢字フォントのデ
ザインが中華圏のものとなっていて、日本人にはかなり違和感がある。ちゃんとし
た日本語の漢字フォントを導入してしまおう。ついでに、ケータイ絵文字のフォン
トも導入しておくと何かと便利。

この作業は、要rootedなので、事前にrootを取っておくこと。busyboxも必ず導入
しておくこと(busyboxは/system/xbinにリンクを展開しておくこと)。

主な作業は、Windows PCで行っているので、他の環境で行う場合は、独自に対応し
て欲しい。特定のフォントを使って説明しているが、他に好みのフォントがある場
合は、フォント名を読み替えて、同様にやってみると良いだろう。

※注意事項
  以下、すべて自己責任で行うこと。端末が動作しなくなったり、何らかの動作不
  良となった場合でも、一切の保証は行わないので、そのことを了承した上で操作
  する事。

※Xperia pro/mini proでは、DroidSansFallback.ttfにCJK(中華圏、日本、韓国)
  フォントが入っている。絵文字フォントを使うためにDroidSansFallback.ttfを
  絵文字フォントで入れ替えると、中華漢字やハングルが表示できなくなってしま
  う。絵文字フォントは、DroidSansJapanese.ttf側にマージした方が良い。以下、
  マージの手順も含めて説明する。

使用するフォント:
  以下の2つのフォントを使用する。
  (1) Migu 1M
    このフォントの特徴は…
    ・テキストエディタで利用しやすい「等幅フォント」である。
    ・半濁点(゜)を大きくしていて、濁点(゛)と判別しやすい。
    ・漢数字の「一」と長音記号「ー」の字形の差がしっかりしている。
  (2) 絵文字結合済みフォント Helvetica
    これは、絵文字入りフォント。アニメーションなしで白黒表示になるが、絵文
    字が表示できるので、ケータイ向けWebサイトの表示やケータイメールを受け
    た時等で便利。

フォントの入手先:
  (1) Migu 1M
    M+とIPAの合成フォント
      http://mix-mplus-ipa.sourceforge.jp/
    ここの「DOWNLOAD」より、以下の「Migu 1M」のZIPファイルをダウンロードす
    る。
      migu-1m-20111002.zip (2012/01/23現在の最新ファイル)
    これを展開して「migu-1m-regular.ttf」を取り出す。
  (2) 絵文字結合済みフォント Helvetica
    iPhoneにも絵文字を!
      http://cova.sakura.ne.jp/sb/
    ここの「絵文字結合済みフォント(emoji_font.zip)」をダウンロードする。
    これを展開して「Helvetica.ttf」を取り出す。

フォントマージツール:
  fontforge というツールを使用する。以下から入手してインストールしておく。
    http://www.geocities.jp/meir000/fontforge/

フォントのマージ:
  1)フォントファイルを開く
    fontforgeでHelvetica.ttfとmigu-1m-regular.ttfを開く。
    fontforgeを起動すると、「フォントを開く」の画面になるので、ファイルを
    選択してHelvetica.ttfを開く。
    続いて、[ファイル]→[開く]で、また「フォントを開く」の画面になるので、
    migu-1m-regular.ttfを開く。
    これで、2つのフォントが同時に開いた状態になる。
  2)フォントのサイズ調整
    それぞれのフォントの定義サイズが異なるので、そのままマージすると表示し
    た時に、絵文字のサイズだけ異常になる。両方のフォント情報を確認して、サ
    イズ調整を行う。フォント情報は、[エレメント]→[フォント情報]で確認でき
    る。ここの[一般情報]を見て、Helvetica.ttfのサイズをmigu-1m-regular.ttf
    に合わせて調整しよう。
    具体的には、Helvetica.ttfの[エレメント]→[フォント情報]で、[一般情報]
    を表示して、以下の項目を変更する。
      [高さ]        1638 →  860
      [深さ]         410 →  140
      [下線の位置]  -105 → -100
      [Height]       101 →   50
    以上の変更をしたら、[OK]で、フォント全体のグリフの変形(サイズ変更)が始
    まるので、終了するまで待つ。
  3)絵文字のグリフをmigu-1m-regular.ttfへコピー
    Helvetica.ttfの57345文字目(U+E001)から57434文字目(U+E05A)を選択してコ
    ピー(Ctrl+C)する。
    migu-1m-regular.ttfの57345文字目を選択して貼り付ける(Ctrl + V)。これで
    57434文字目(U+E05A)まで絵文字が入る。
    同様に、下記の範囲の絵文字をすべてコピーして貼り付ける。
        57345(U+E001) ~ 57434(U+E05A) (これは、上記の説明で示した領域)
        57601(U+E101) ~ 57690(U+E15A)
        57857(U+E201) ~ 57939(U+E253)
        58113(U+E301) ~ 58189(U+E34D)
        58369(U+E401) ~ 58444(U+E44C)
        58625(U+E501) ~ 58679(U+E537)
        58942(U+E63E) ~ 59223(U+E757)
        63743(U+F8FF)
     これで、絵文字のマージが終わったので、マージしたフォントをファイルに
     出力する。migu-1m-regular.ttf側で、[ファイル] → [フォントを出力]で
     フォントファイルの名前を「DroidSansJapanese.ttf」、フォントタイプは
     「TrueType」で[ビットマップフォント無し」として、「保存」する。警告メ
     ッセージやエラーメッセージが出るが気にせず続行して最終的に「保存」す
     れば良い。
     最後に、fontforgeを終了させる。[ファイル]→[終了]で、[保存しない]を
     選択して終了させる。
     以上で、絵文字がマージされたフォントファイルDroidSansJapanese.ttfが完
     成。

入れ替えの準備:
  以下の内容のファイルをテキストエディタで作成しておく(改行コードはLFのみ
  とすること)。
    ファイル名: cpfonts.sh
                     このファイルは、ここからダウンロードできるようにしておいた。
    内容: (行頭の#や$も意味があるので、略さず入れる事)
===
#!/system/bin/sh
bin=/system/bin
bbx=/system/xbin
$bin/mount -o remount,rw /dev/block/mtdblock0 /system
echo "-- Copy DroidSansJapanese.ttf."
$bbx/cp /sdcard/fonts/DroidSansJapanese.ttf /system/fonts/DroidSansJapanese.ttf
$bin/chmod 644 /system/fonts/DroidSansJapanese.ttf
$bin/chown root.root /system/fonts/DroidSansJapanese.ttf
if [ -e /system/fonts/DroidSansSemcCJK.ttf ]; then
  echo "** Rename DroidSansSemcCJK.ttf to DroidSansSemcCJK.ttf.sv."
  $bin/mv /system/fonts/DroidSansSemcCJK.ttf /system/fonts/DroidSansSemcCJK.ttf.sv
fi
# reboot
===
  端末側のmicroSDカードを取り出して、PC側に入れる。
  microSDカードに「fonts」フォルダーを作成する。
  以上で作成した2つのファイル「DroidSansJapanese.ttf、cpfonts.sh」を
  microSDカードのfontsフォルダーにコピーする。
  microSDカードをPCから取り出して、端末側に戻す。

  ※上記のcpfonts.shで、DroidSansSemcCJK.ttfをリネームしている。これは以下
    の理由からである。
    ・DroidSansSemcCJK.ttfには、DroidSansFallback.ttfに入っていない中華漢
      字がいくつか定義されている。これらの漢字は、かなり特殊な文字だと思わ
      れる。これらの中華漢字の一部が絵文字フォントのコードと重なっている。
    ・Xperia pro/mini proでは、フォントの参照順が、以下のようになっている
      らしい。
        DroidSans.ttf → DroidSansSemc.ttf、DroidSansSemcCJK.ttf
                       → DroidSansJapanese.ttf → DroidSansFallback.ttf
      この為、いくつかの絵文字は、同一コードの文字をDroidSansSemcCJK.ttf内
      で先に見つけてしまい、絵文字が表示されず変な漢字が出てきてしまう。
    ・絵文字をすべて正常に表示させるには、DroidSansSemcCJK.ttfが邪魔になる
      ので、リネームしてシステム側から参照されないようにする。
    ・リネームした弊害として、いくつかの特殊な中華漢字が表示されなくなるが
      通常のWebサイトの参照等で、問題になる事は非常にまれだと思われる。
      この辺が気になる場合は、DroidSansSemcCJK.ttfに収納されている中華漢字
      を直接調べてみて欲しい。

端末側での作業:
  事前に、端末エミュレーターのアプリをインストールして、必要な設定をしてお
  く事。端末エミュレーターとして使えるアプリには。以下のものがある。
    Android Terminal Emulator
    ConnectBot
  おすすめは、Terminal Emulator。最近、UTF8対応が完了したそうで、日本語の
  入力も表示もできるようになった。日本語表示の為にConnectBotを使っていた場
  合は、いい機会なので、Terminal Emulatorに乗り換えることをおすすめする。
  端末エミュレーターを起動後、以下のコマンドを実行(行頭の「$ 」や「# 」は
  プロンプトなので、それ以降を入力)。
===
$ su
# sh /sdcard/fonts/cpfonts.sh
# reboot
===
  端末が再起動するのを待って、作業終了。

表示確認:
  日本語フォントが正常に表示されるかは、たとえば「写」をテキストエディタで
  入力・表示してみれば良い。
  絵文字の確認は、標準のブラウザーでこの辺でも表示してみれば良いだろう。
    ドコモ絵文字 http://code.cside.com/i-mode/emojimode/
    ソフトバンク絵文字 http://code.cside.com/softbank/
  すべての絵文字が正しく表示されていれば、大成功だ。

絵文字の入力:
  テキストエディタやメール等で、絵文字を入力したい場合、nicoWnnG IMEが
  かなり便利だ。ハードキーボードからでも、「Sym」キーを何度か押すと絵文字
  一覧が出るので、そのまま入力すると良い。ただし、ドコモ絵文字かソフト
  バンク絵文字かは意識して使用する事。

※今回、フォントのマージに関して、以下のサイトを参考にさせてもらった。
    絵文字入り DroidSans.ttf と DroidSans-Bold.ttf
    http://kadrinche.la/2011/05/22/droidsans-ttf-with-smiley/

Xperia pro/mini proでキートップにない記号を入力する2011/11/07 11:38

Xperia pro(MK16i)/mini pro(SK17i) で、キーマップの置換というか追加をしてみた。

Xperia pro/mini proは、QWERTYキーボードが付いていて、なかなか便利。通常のAndroidアプリを使う分には、もう完璧って感じなのだが、ベースになっているLinuxにアクセスする場合、ちょっと困った事になる。標準状態では、キーボードから入力できない記号が多いのだ。端末エミュレータ等を使用する場合に、シェル(sh)で頻繁に使用するパイプ"|"や、リダイレクト"<"・">"・">>"といった記号がキートップに無く、非常に苦労する。

このままだと不都合な事が多いので、キーマップの修正にチャレンジしてみた。
技術的な詳細は、下記のZIPファイル内の「キーマップ技術情報.txt」を参照されたい。
バイナリーエディタでファイルの中身を変更して書き戻すだけなので、この情報が理解できる人なら、好みに合わせていろいろ変えてみる事も容易だろう。

で、結論として、「かなりうまくいった」ので、公開することにする。「かなり」ってのは、つまり、ダメな部分もあったのだ。残念な事に、入力方法に「POBox Touch」を選んでいる場合、この変更が有効にならない。どうやら、POBox Touchは、直接、キーコードを読み込んで、独自に物理キーの処理を行っているようだ。入力方法に「nicoWnnG IME」や「ATOK」を使用すれば、問題なく記号類が入力できるようになるので、入力方法を適宜選んで使ってもらえば良いだろう。

以下に、修正したキーマップ定義の導入方法を示す。

なお、修正されたキーマップを導入した場合に入力できる記号類は、文末に記載したので、そちらを参照の事。

※注意事項
  以下、すべて自己責任で行うこと。端末が動作しなくなったり、何らかの動作不良となった場合でも、一切の保証は行わないので、そのことを了承した上で操作する事。

1) 準備
この作業は、要rootedだ。Xperia pro/mini proは、事前に「root取り」を行っておくこと。
やり方は、以下を参照の事(ブートローダーのアンロックは不要!)。

  [NEW][26/OCT/2011][ROOTING] Xperia 2011 Easy Rooting Toolkit [v1.0](zergRush Exploit)
    http://forum.xda-developers.com/showthread.php?t=1320350

  簡単に手順を示しておく(要Windows PC)。
    a) 上記のサイトから、DooMLoRD_v1_ROOT-zergRush-busybox-su.zipをダウンロード
    b) Xperia側でUSBデバッグを有効化した後、PCに接続(PC Companionは起動しない事)
    c) PC上で入手したzipファイルを解凍し、フォルダ内の runme を実行

  ※上記以外の方法でrootを取っている場合、busyboxが未導入なら導入して、/system/xbinに
      busybox --install -s /system/xbin
 とでもして、リンクを作っておくこと。

2) 修正版キーマップ用ファイルをXperia側へコピー
  先ず、以下のZIPファイルをPC上でダウンロードして、解凍しておく。

    MK16i-SK17i-key-remap.zip

  Xperia側のmicroSDに、「keymap」フォルダーを作成し、上記のZIPファイル内の以下のファイルをコピーする。

    pm8058-keypad.kcm.bin.remap

3) 端末エミュレーターのインストール
  以降の操作は、Xperia側で端末エミュレーターを使って行うので、端末エミュレーターをインストールしておく。お薦めは…

    ConnectBot

  このConnectBotでは、表示される文字サイズがボリュームボタンで変更できるので、見やすいサイズに簡単に変更できる。日本語の入力はできないが、ファイル名等は日本語でも化けずに表示される。インストールしたら、「local」で接続先を作っておけば良い。

4) 端末エミュレータを起動して、キーマップファイルを置換
  端末エミュレーター上で、以下のコマンドを実行する。なお、「$ 」や「# 」は、シェルが表示するプロンプトなので、入力しない事。

  $ su
  # mount -o remount,rw /dev/block/mtdblock0 /system
  # cd /system/usr/keychars
  # mv pm8058-keypad.kcm.bin pm8058-keypad.kcm.bin.org
  # cp /sdcard/keymap/pm8058-keypad.kcm.bin.remap ./pm8058-keypad.kcm.bin
  # chmod 644 pm8058-keypad.kcm.bin
  # chown root.root pm8058-keypad.kcm.bin
  # reboot

  以上で、Xperiaが再起動する。これで、置換終了。

=====

入力可能となる文字等

入力文字  キー操作    コメント
------------------------------------------------------------------------
ETX(0x03) ALT+SHIFT+C Ctrl+C シェル(sh)で、フォアグラウンドプロセスの強制終了
EOT(0x04) ALT+SHIFT+D Ctrl+D シェル(sh)で、入力の終了(End of file)
SUB(0x1a) ALT+SHIFT+Z Ctrl+Z シェル(sh)で、フォアグラウンドプロセスの一時停止
ESC(0x1b) ALT+SHIFT+Q エスケープ
  <     ALT+SHIFT+,
  >     ALT+SHIFT+.
  [      ALT+SHIFT+K ブラケット(bracket)
  \     ALT+SHIFT+B
  ]     ALT+SHIFT+L ブラケット(bracket)
  ^     ALT+SHIFT+O カレット(caret)
  `     ALT+SHIFT+' バッククォート
  {     ALT+SHIFT+N ブレース(brace)
  |     ALT+SHIFT+? パイプ(vertical bar)
  }     ALT+SHIFT+M ブレース(brace)
  ~     ALT+SHIFT+P チルダ (ConnectBotの場合、ALT+DELETEでも入力可能)
------------------------------------------------------------------------
※ ALTキーは「■」マークのキー


EPC VIA WM8650(マーケット導入編・暫定版)2011/06/03 10:22

※ ちょっと忙しいので、整理できてないけど、暫定公開。

rootも取れたので、ちゃんとしたマーケットを入れる。

最新っぽいマーケットが、ここにあったので、そこからダウンロード。
New Working Market 2.2.7 (apk attached)

ここから、com.android.vending-2.apk を入手。それから、
これのファイル名を「Vending.apk」に変更して、SDカードのルートフォルダーに
コピーする。
端末エミュレーターを起動して、以下のコマンドを実行。

$ su
# cd /system/app
# cp /sdcard/Vending.apk ./
# chmod 644 Vending.apk
# exit
$ exit

リブートして、マーケットを起動してみる。
あれ、一瞬、画面が真っ白になって、すぐ戻ってきちゃう ;_;

ダメだ、何か致命的に足りないんだろうか? 以下にヒントがあった。

Android SDKを使おう

やはり不足するものがあるようで、以下のものを補う必要があるみたい(これら、
3つがすべて必要なのかどうかは不明だけど)。
ここにファイルがあるので、使わせてもらう。

GoogleServicesFramework.apk
MarketUpdater.apk
Development.apk

マーケット本体だけは、com.android.vending-2.apkの方が新しいので、それを
Vending.apkとして使えばよいだろう。これは、既にコピー済みなので、上記の3つ
のファイルもSDカードのルートフォルダーに入れて、EPC VIA WM8650側に持って来
て、端末エミュレーターから、以下のコマンドでコピーしよう。

$ su
# cd /system/app
# cp /sdcard/GoogleServicesFramework.apk ./
# chmod 644 GoogleServicesFramework.apk
# cp /sdcard/MarketUpdater.apk ./
# chmod 644 MarketUpdater.apk
# cp /sdcard/Development.apk ./
# chmod 644 Development.apk
# exit
$ exit

リブートして、マーケットを起動してみる。ちなみに、リブートは、端末エミュレ
ーターから、以下のコマンドでも行える。

$ su
# reboot

上記の作業中なら、exitせずに、rebootコマンドを実行しちゃえば良い。

さて、マーケットを起動してみよう。を! 今度は起動した。Google Accountを作る
か聞いてくる。Nextで、Create(新規)かSign in(既存のアカウントを使う)を選択
するようになっているので、適宜、設定しよう。マーケット利用規約が表示される
ので、「同意する」を選択すれば、やっとマーケットが使えるようになった。

EPC VIA WM8650(root奪取編)「rootを狙え!」2011/06/02 13:26

Android端末なら、やっぱり、rootを取って、あれこれ自由にいぢりたいよね。
Android2.2系なら、SuperOneClick で一発OK。そう思っていたが、大問題が発覚。SuperOneClick って、PC(Windows)からUSB接続してrootを奪取するものだ。ところが、このEPCは、3つもあるUSBポートのすべてが、USB-Aタイプで、かつ、マスターモード(ホスト)で動作する。PCと接続するには、スレーブモードにならないとダメだ。これでは、PCと接続できない。古いAndroidなら、z4root という便利なアプリがあって、Android端末本体だけで簡単にルートが取れたんだが、z4rootが利用しているセキュリティーホールは、既にふさがれているらしく、z4root はもう使えない。他にroot取りのツールを探すも、使えそうなものは発見できず。
rootへの道は完全に絶たれた。

でも、rootは何としても取りたいよね。そこで、調べまくって、1週間も掛かってしまったが、糸口を発見。そして、牙城を崩せた。

非常に厄介な問題だったが、SuperOneClickで、どうやってrootを取るのかを調べてみると糸口があった。psneuterというファイルをAndroid端末に転送して、Android端末上で実行してrootを取っているようだ。psneuterであれこれ検索してみたら、参考になる情報が出てきた。

NexusOneにUbuntuを
[HOWTO] Root Nexus One 2.2.1 FRG83D without OEM unlock

psneuterは、adb(Android端末のアプリ開発で使用するデバッガー)の脆弱性を利用しているようだ。psneuterによりadbの脆弱性を突いて、一時的にrootを取るらしい。つまり、rootを取れても、adbで接続された先(つまり、デバック用で繋いでいるPC)から操作しないと何もできないって訳だ。やはり、USB経由で繋げないとダメなのか…

更に調べてみると、adbはネットワーク越しでも接続できるようだ。
ここの情報が参考になる。

SmartQ5 Android 開発Tips 1 (デバッグ方法)

なかなか奥深い。これらを参考にさせていただき、EPC のrootを取ってみる。

1. 必要なものを集める
  準備は、PC(Windows)上で行う。先ず、SuperOneClick を入手して、必要なものを取り出そう。

    [APP]SuperOneClick v1.9.1

  ここから、SuperOneClickv1.9.1-ShortFuse.zip をダウンロードする。ちなみに、xdaからのダウンロードには登録(無料)が必要なので、未登録なら、登録の作業はしておこう!
  このZIPファイルを解凍すると、その中に以下のファイルがある。

    Exploits\psneuter
    Root\Superuser.apk
    Root\su-v3

  もうひとつ、必要なものがある。Android端末上であれこれコマンドを実行するので、端末エミュレーターが必須となる。以下から入手しておこう。

    Android Terminal Emulator v1.0.29 apk
 
  ここから、ダウンロードすると、Term.apk が手に入る。

  SDカードを用意する。これらの4つのファイルをSDカードのルートフォルダーにコピーする。su-v3は、名前をsuに変更しておこう。これで、SDカードには以下の4つのファイルが入った。

    psneuter
    Superuser.apk
    su
    Term.apk

  上記以外に、PCからEPCへネットワーク越しにデバッグモードで接続する為に、adbも必要となる。Android SDK(開発環境)のインストールが必要になるところだが、利用したいのはadbだけだ。実は、先ほど入手した SuperOneClickv1.9.1-ShortFuse.zip の中にも adb が入っているので、それを使用すればよい。

    ADB\adb.exe

  これは、後ほど使用する。

2. EPC VIA WM8650での準備
  上記のSDカードをEPCにセットする。上部の通知領域に「SDカードの準備中」とかメッセージが出てから、消えるまで待つ。それから、以下の手順で操作。

・端末エミュレータのインストール
  ホーム画面にある「File Browser」を起動する。カーソルキーで選択してからEnterキーを押せば起動できるので、タッチパッドを操作しなくても起動可能だ。「File Browser」が起動したら。右カーソルキーで「SD」を選択してEnterでSDカードの内容を表示させる。カーソルキーで、「Term.apk」を選択してEnterを押せば、インストールが始まる。確認の画面が出るので、「インストール」を選んでEnter。「アプリケーションをインストールしました」が表示されたら、「完了」で一旦終了させる。「File Browser」の画面に戻るので、Escキーで終了させる。

・端末エミュレータの設定
  インストールしたままだと、フォントが小さかったり、画面の色が見にくかったりするので、端末エミュレータの設定を少し変更しておこう。
  ホーム画面右下隅の小さい四角が4×4並んでいるアイコンでアプリケーション一覧を表示させて、そこから「端末エミュレータ」を起動する。コンソール画面に切り替わるので、キーボードの「Zzz」キーを押してメニューを表示させて、設定で設定メニューを表示させよう。ここに、フォントサイズや色があるので、好みに合わせて設定する。設定が済んだら「Esc」キーでコンソール画面に戻ろう。
  端末エミュレータは、「exit」と入力してから「Esc」キーで終了できる。

・ネットワークへの接続とIPアドレスの確認
  自宅で無線LANを導入しているなら、ホーム画面の「Wi-Fi設定」から接続の設定をして、接続する。
  有線のLANで接続するのでもOK。PCと同じネットワークに繋いでおく。
  ここで、IPアドレスを確認する。端末エミュレータを起動して、以下のコマンドを実行する(「$ 」はプロンプトなので、「ifconfig」だけキーイン) 。

    $ ifconfig

  ここで表示される情報で、Link encap が Ethernet となっている方に表示されているinet addrの値(例: 192.168.12.34)をメモしておく。端末エミュレータは一旦、終了させる。

・ホーム画面の「設定」から、以下の2つにチェックを入れておく。
    「USB」→「ADB]
    「アプリケーション」→「開発」→「USBデバッグ」

  準備はここまで。

3.root取り
  以下は、PC(Windows)上から作業する。

・コマンドプロンプトを開く
  スタートメニューの「すべてのプログラム」の「アクセサリ」の所に「コマンド プロンプト」があるので、それを起動する。

・adbのあるフォルダーへ移動
  cdコマンドで、SuperOneClickv1.9.1-ShortFuse.zipを解凍したフォルダーへ移動する。さらに、そこのADBフォルダーに移動する。

・以下のコマンドを実行
  以下のコマンドで、EPC のadbサーバーに繋いで起動する。

    set ADBHOST=<先ほど調べたIPアドレス>
    adb kill-server
    adb start-server

  実行例: (「~>」部分はプロンプトなので、実行環境に合わせた表示になる)
    ~>set ADBHOST=192.168.12.34
    ~>adb kill-server
    ~>adb start-server
    * daemon not running. starting it now on port xxxx *
    * daemon started successfully *

    ~>

  上記の例の様に、「* daemon started successfully *」が表示されれば、OKだ。

・一時的なroot取り
  続いて、以下の手順でEPC に入りこんで、一時的にrootを取る。先ず、以下のコマンドでEPCに接続する。

    adb shell

  接続できると、「$ 」のプロンプトが表示される(「# 」と出るかもしれないが気にせず、そのまま続けよう)。これで、EPC をコマンド操作できるようになる(この時点では、まだrootにはなっていない)。ちなみに、EPC では、既にbusyboxが入っているので、いろいろコマンドが使える。
  ここからroot取りに入る! 以下のコマンドを順番に実行(「$ 」はプロンプトなので、入力しない事)。

    $ cd /tmp
    $ cp /sdcard/psneuter ./
    $ chmod 755 psneuter
    $ ./psneuter

  ここで、以下のメッセージが出て(出ない場合もある)、adbの接続が切れる。
  Windowsのコマンドプロンプト側に戻ってきて、「~>」なプロンプトが表示される。

    property service neutered.
    killing adbd. (should restart in a second or two)

    ~>

  ちょっと待ってから、以下のコマンドで、もう一度つなぎなおす。

    adb kill-server
    adb start-server
    adb shell

  今度は、「# 」のプロンプトが表示されるはずだ。そこで、rootが取れたかを以下のコマンドで確認する。

    # id

  以下の表示になればrootが取れている。

    uid=0(root) gid=0

  これ以外の表示になったら失敗しているので、初めからやり直し。

・恒久的にrootを取れるようにする
  suコマンドで、恒久的にrootを取れるように、suコマンドをセットする。以下の順に、コマンドを実行。

    # cd /sbin
    # cp /sdcard/su ./
    # chmod 4755 /sbin/su
    # exit

  これで、Windowsのコマンドプロンプト側に戻ってきて、「~>」なプロンプトが表示されたら、PC側からの作業は終了。

  ここからは、EPC で作業する。

・Superuserのインストール。
  Superuserは、rootの権限を管理するアプリだ。ホーム画面にある「File Browser」を起動して、「SD」を選択してEnterでSDカードの内容を表示させる。カーソルキーで、「Superuser.apk」を選択してEnterを押し、インストール。

・rootが取れているか確認
  一度、EPCの電源を落とす。電源ボタン長押しで、「電源を切る」を選んで、完全に電源を落とす。それから電源を入れ直して、再起動させる。
  起動したら、「端末エミュレータ」を起動。suコマンドを実行してみる。

    $ su

  ここで、Superuserのアプリが動いて、Superuserアクセスの許可を求めてくるので、「許可」する。「端末エミュレータ」の画面に戻って、プロンプトが「# 」に変わっていれば、root取りの確認完了だ。とりあえず、exitコマンドを2度実行して、「端末エミュレータ」を終了させておこう。

    # exit
    $ exit

・後始末
  本来、psneuterは一時的なroot取りしかできないはずだが、EPC では、本体を再起動しても、adbがroot取り状態のままになってしまう。このままでは、公衆ワイヤレスLANとかで接続した場合に、セキュリティーホールになってしまう。「設定」から、以下のチェックを外して、外部から操作されないようにしておくこと。

    「USB」→「ADB]
    「アプリケーション」→「開発」→「USBデバッグ」

  これで、root取り完了なので、後は、正規のマーケットを入れるなり、フォントを入れ替えて、中華フォントとさよならするなり、なんでも自由にできる!!
  その辺は、改めて書く予定だ。