2011年7月4日月曜日

Sharp 3D SH-03C の root化とWiFiテザリング

Sharp 3D SH-03Cを購入して約半年が経ち、今ではすっかり落ち着きましたが、現在Docomoサイトでは型落ちとなり、新機種が出回っております。ちと寂しい!!

しかし、先月にはAndroid2.2へバージョンアップし、使い勝手も少しは良くなりました。そんな中、以前から気になっていたSH-03Cのroot化が、Android2.2でも出来るらしいのでトライしてみる事に、さらにこれまた最大懸案であったテザリングにも挑戦しました。

結果、root化及びテザリング共に成功いたしました。先人の方々に感謝!感謝!です。

root化と言っても完全なものではないようです、プリインストールアプリ削除などは出来ません。
しかしテザリング機能ができれば私にとって目的の半分位は達成したも同じですので非常に満足しています。

飛散防止フィルム剥し、Andorid 2.2による操作性向上、SDメモリーへのアプリ移行それに今回のキャッシュ削除によるメモリー開放、テザリングなどなどの恩恵で、後一年間位は使用に耐えるでしょう・・・タブン・・・


ここからは、お決まりの自己責任ということでお願いします。

携帯が文鎮化しても当方は一切責任を負えませんのであしからず。
また、当然のことながら、ここで紹介した情報公開されている方々への責任転嫁もご法度です。

では、早速手順を紹介しましょう。

大まかには
A.JDK及びAndroid SDK のインストール
B.SH-03C 用 USB ドライバのインストール
C.ADB/Fastboot USB ドライバのインストール
D.一時root権限取得とroot権限取得
E.テザリングソフトの導入

では、各項目を少し詳しく

A.JDKとAndroid SDKのインストール

【初心者向け】Android SDKインストール手順 2011年1月版!(windows版)」を参照
Android SDKのインストールまで詳しく紹介されています。感謝です!

PCが32ビット(x86)環境の場合は、上記サイトに従って行えば難なくインストールは完了するでしょう。
しかし、64ビット(x64)環境の場合は、若干注意が必要です。
  • JDKは、x86版をインストールすること。Android SDKがx86版しか認識しません。
  • Android SDKのインストール先は、「C:\Program Files (x86)\Android\android-sdk」となるので環境変数Pathの設定も変わってくる。

    Path=C:\Program Files (x86)\Android\android-sdk\tools;C:\Program Files (x86)\Android\android-sdk\platform-tools;

  • SDKのインストールまで終了したら、 コマンドプロトで「adb」が使えるか確認してみます。

    1. コマンドプロンプトを開いて、「adb.exe」と打ち込んで「Enter」を押します。
    2. adbのヘルプメニューがズラ~っと出てきたらOKです。
    3. エラーが出た場合は再確認してみましょう。
B.SH-03C 用 USB ドライバのインストール
  1. ここからSH-03C用USBドライバをダウンロードする
  2. ダウンロードしたSH-03C_driver.exeを実行し、展開する
  3. SH-03C_driverフォルダの中のSH03C_driver.exeを実行し、ドライバをインストールする
C.ADB/Fastboot USB ドライバのインストール
  1. ここから「SHARP共通ADB USBドライバ」をダウンロードする
  2. usb_driver_SHARP_r3.3.zipを解凍する
  3. SH-03Cの端末設定の"USBデバッグ"にチェックを入れる
  4. SH-03とPCを付属のUSBケーブルで接続する
  5. Android Composite ADB Interfaceを認識し, ドライバのインストール画面が起動する
    ここで、ADB Interfaceをうまく認識しなかったら「デバイス マネージャー」を開き確認。
    」が付いていたら、ドライバーの更新で次「6.」へ進む。
  6. ドライバ格納先に, 先ほどドライバソフト解凍でできたディレクトリー"usb_driver_SHARP"を選択し, ドライバをインストールする
  7. MicroSDを挿入している場合, USB接続モードが"カードリーダーモード"になっているので, "高速転送モード"に変更します。
  8. 次にコマンドプロンプト上で「adb devices」と打ち込みます、しばらくして接続されているデバイスが表示されたら準備OKです。
D.一時root権限取得とroot権限取得
  1. 一時root権限取得のためのツール「rootkit_is03_0430.zip」をここからダウンロードします。
    zipファイル内の「rootkit_is03_0430」ディレクトリーをCドライブのルートに解凍し、適当な名前にリネームします。私の場合は「rootkit_IS03」に変更した。
    この中に「Superuser.apk」と「jackpal.androidterm.apk」が含まれている。

  2. root権限取得のためのツール「sh03c_rootkit_20110611.zip」をここからダウンロードします。
    zipファイル内の「sh03c_rootkit_20110611」ディレクトリーをCドライブのルートに解凍し、適当な名前にリネームします。私の場合は「rootkit_03C」に変更した。

  3. root権限をON・OFFするツール「IS03rootsw」 をここからダウンロードします。
    ダウンロードした「IS03rootsw.apk」を上記の「rootkit_03C」ディレクトリーに移動します。

  4. 一時的にroot権限を取得する準備をします。
    コマンドプロンプトを開き、「C:\rootkit_IS03」へ移動し下記のコマンドを随時実行します。
    C:\User\xxxxxx>cd C:\rootkit_IS03
    C:\rootkit_IS03>adb push data_local /data/local/
    C:\rootkit_IS03>adb shell chmod 755 /data/local/is03break
    C:\rootkit_IS03>adb shell chmod 755 /data/local/autoexec.sh
    C:\rootkit_IS03>adb shell chmod 755 /data/local/busybox
    C:\rootkit_IS03>adb install Superuser.apk
    C:\rootkit_IS03>adb install jackpal.androidterm.apk
    C:\rootkit_IS03>adb reboot
    コマンドプロンプトはそのまま、SH-03C携帯端末はUSBケーブルで繋げたままリブートします。
    リブート後、暫くするとプロンプトが現れますので、すかさずプロンプト上で
    C:\rootkit_IS03>adb shell /data/local/is03break
    error: device not found
    C:\rootkit_IS03>adb shell /data/local/is03break
    error: device not found


    以下繰り返し
    上記コマンドを入力、コマンドプロンプトで履歴機能(↑キー)を使って、SH-03Cの電源オンから起動完了するまでの間、実行を繰り返します。(15-20回ほど?)
    リブート直後は、反応しませんが途中でコマンドが実行されます。 
    C:\rootkit_IS03>adb shell /data/local/is03break

    [**] Gingerbreak/Honeybomb -- android 2.[2,3], 3.0 softbreak
    [**] (C) 2010-2011 The Android Exploid Crew. All rights reserved.
    [**] Kudos to jenzi, the #brownpants-party, the Open Source folks,
    [**] Zynamics for ARM skills and Onkel Budi

    途中略・・・・・・・

    [!] dance forever my only one
    と、表示されれば成功です。「5.root権限を一時取得し、local.prop を作成します。 」へ進む
    もし、
    Cannot copy boomsh. :  Permission denied
    上記のように表示され失敗したら下記コマンドを実行
    (一度root化に成功した後、再度検証した時この様な状態になりチョット焦りました。)
    C:\rootkit_IS03>adb shell
    $ rm /data/local/tmp/boomsh
    $ rm /data/local/tmp/sh
    再度「4.一時的にroot権限を取得する準備をします。」からやり直す。

  5. root権限を一時取得し、local.prop を作成します。
    C:\rootkit_IS03>adb shell
    $ /data/local/tmp/sh
    # cd /data/local
    # cat local.prop > /data/local.prop
    adb shellのプロンプト「$」が「#」となればroot権限を一時取得しています。メデタシ!メデタシ!
    exit」コマンドを入力し、adb shellから抜け出し、プロンプト画面に戻ります。

  6. 次にroot権限の取得を行います。
    コマンドプロンプトで、「C:\rootkit_03C」へ移動し下記のコマンドを随時実行します。
    C:\rootkit_IS03>cd C:\rootkit_03C
    C:\rootkit_03C>adb push data_local /data/local
    C:\rootkit_03C>adb push local.prop /data/local.prop
    C:\rootkit_03C>adb shell chmod 555 /data/local/autoexec.sh
    C:\rootkit_03C>adb reboot
    再度、リブートし、ルートOn・Offアプリをインストールします。
    多分、リブートする前でもOKでしょう。
    C:\rootkit_03C>adb install IS03rootsw.apk
E.テザリングソフトの導入

アンドロイドマーケットで「Barnacle Wifi Tether」を探してインストール
使用方法については、各自で検索してね!

現在、動作を確認したもの
  • Superuserに登録できたアプリケーション
  • 各々のアプリの全ての機能を検証したわけではありません
    完全なroot化ではないので機能しないものが多いかも

Superuser ◎ rootアプリの管理?
IS03rootsw ◎ rootのON・OFF
Jacpal.androidterm ◎ ターミナル
Barnacle Wifi Tether △ WiFiテザリング アドホックモードでPCと接続OK
Titanim Backup △ アプリ本体及びデータのバックアップ、プリインストールアプリの凍結はOK
Root Exploer △ キャッシュ削除
ShootMe ◎ 本体だけでスクリーンショット
PowerTutor ◎
ClockSync ◎
WiFi Keyboard - 検証していないので??
AntTec App Manager △ よくわからん!
AdFree ◎ アプリの広告を消す

最後に
rootkit作成者の「goroh_kun」さん
IS03 root switch作成者の「Isawo-Kikuchi」さん
ただぐだぐだと(新)運営者の「takef0845」さん
価格.comの「†うっきー†」さん
他ネットの先人の方々本当にありがとうございます。

追記:2011/07/07
root化してテザリングが成功したときは、めちゃ感激しました。これまで時々使っていたDWR-PGをどうしようか思案中です。

2-3日使用してみて、root化の恩恵を感じたのが、
  • 勿論テザリングが出来るようになったこと。
  • data\cache内のキャッシュデータを消せたこと。
    結果メモリーが、35MB→140MB と増えた。
  • うざいプリインストールアプリアイコンが消せたこと。
追記:2011/07/09
ところどころ可筆しました。
ただぐだぐだと(新)運営者の「takef0845」さんへの御礼が抜けていた事、お詫びいたします。
ブログで紹介されているPDF文書は、是非読んでみましょう!

追記:2012/05/27
デザリング→テザリング 修正
おもいっきり恥ずかしいことですが、「tethering」をデザリングと今日の今日まで思い込んでいました。

今週から、SC-03C には引退していただき Galaxy Nexus SO-04D を購入してしまいました。
本当は、年末まで使い続けるつもりでしたが、先週新幹線の中で紛失してしまい仕方なく機種変してしまいました。

早速、root化しカスタムROMを導入しました。
比較してみると、アプリのインストールは劇的に早くなったが、普段の操作性はSC-03Cもなかなか健闘しているかと思う。

0 コメント: