タグ別アーカイブ: root

HTC Androidのロギングツールで個人情報流出の可能性があるのは最新端末だけ?

穏やかではないニュース。HTC Android端末から個人情報が流出する可能性があるということですが、よく読んでみると最新端末のEVO 3D、EVO 4G、Thunderbolt、Sensationということで、Desire Sは問題ないのかと安心しましたが・・・

続きを読む HTC Androidのロギングツールで個人情報流出の可能性があるのは最新端末だけ?

[UPDATE1]やっとrootとれました・・・XPERIA mini pro SK17

XPERIA mini pro SK17 rooted については既に様々なブログで紹介されています。自分の場合はそれにもかかわらずかなり苦労してしまいました。普段Macユーザで、WindowsやLinuxに馴染みのないユーザの参考になればと思います。

まずbootloaderのアンロックが必要ですがメーカー保証がなくなります。ただし公式サイトではXperia mini pro(SK17)とmini(SK15)については思わぬトラブルが生じるのでアンロックはしないようにと注意喚起されています(併せてソリューションがxdaで紹介されているようなことまで書いてあるのには驚きましたが)。

http://unlockbootloader.sonyericsson.com/
sony00

また、rootedで失敗すると起動ロゴのループや起動すらしないなど、文鎮化するリスクもありますのでご注意ください。

参考にさせていただいたのは以下のサイトです。

Xperia Mini Pro(SK17i)でrootをとる « ごくつぶしの日々
アンロックからroot化の方法まで。さらに元に戻すまでの方法についても網羅的にかつコンパクトにまとめてあります。

[電話] XPERIA Mini Pro SK17i の root 取得 : 8796.jp管理日誌
操作をひとつひとつ丁寧に解説しているというよりも実に様々なことに取り組んでその内容を紹介しています。

root化の詳細手順は上記のサイトや他にもいくつもありますのでご確認ください。以下、失敗というか戸惑ったところです。解説してくださっているサイトを見ると、WindowsとLinuxですから、それだけで普段Macを使っている私にはちょっと敷居が高くなります。その悪い予感が見事に的中した感じです。

USBドライバのインストール

bootloaderのアンロックやrootedにはAndroid SDKが必要です。Android SDKをインストールしても、必要なツールやドライバはAvailable Packageから自分で選択しないとダメなのです。また、それがどのパッケージか分かりにくくドライバのインストールだけでかなりの時間をロスしました。Twitter仲間の @jin_siroi さんに教えていただいた以下のサイトが参考になります。

USBドライバの在り処 | シカでした。
Android SDKのインストールする際にUSDドライバに関するアクセスが多いようですから、実は悩んでいるユーザは結構いるのかもしれません。

さらに、問題なのがSony Ericssonの公式アンロック手順を紹介するインストラクションに従うと必ず失敗することです。Android SDKのUSBドライバのandroid_winusb.infをSony Ericsson公式サイトで入手したファイルに置き換える指示は無視してください。Android SDKのUSBドライバ(android_winusb.inf)にmini pro部分を追記するだけでいいのです(必要に応じて64bit部分に追記)。

ドライバが正しくインストールされたところ
usb_driver

LED青点灯がfastbootモード接続できていることあらわします
DSC00669

Linux環境

Virtualboxを使う方法が紹介されていますが、自分はVMware Fusionを購入していたので、Fusionを使ってUbuntu11.04をインストールすることにしました。イメージの分解や作成は問題なくできるのですが、Macとその上で動いているUbuntuのファイルの受け渡し方法で悩みました。Fusionには特定のフォルダを両方の環境でシェアする機能があるのですが、そこを使うとなぜかコピーするだけに異様に時間がかかり、最悪の場合、何も反応がないままの状態になります。仮想環境側に割り当てるメモリが不足していたのかもしれませんが、何度かイメージを作り直しているとファイルの受け渡しの待機時間が長くなり非効率になります。

ファイルの取り込み、コピーにはUSBメモリを使いました。Fusion側で使用したい場合は、Mac側でUSBメモリを解除しておき、Fusionの”Virtual Machine”からUSBを選択して該当のメモリスティックを選ぶだけで仮想環境のUbuntuにマウントされ、ファイルのやりとりに要する時間は劇的に短くなりました。

起動ロゴのループ

最初のイメージを焼いたところ起動ロゴのループが発生しました。この状態でSEUSで初期化しようとすると改造されたソフトウェアがインストールされているというメッセージが出て失敗します。いよいよ文鎮かと覚悟しかけたときにFlashToolを使ってSEUSにて再初期化することが可能でした。参考までに起動ロゴがループする映像をアップしました。

root化が失敗して起動ロゴがループするところ

結局、2回目のチャレンジでは1回目と同じような手順で作業していたのですが、今度はなぜかrootがとれてしまったので何が原因かは特定できませんでした。

DSC00670

結果よければ全てよしということで・・・

続きを読む [UPDATE1]やっとrootとれました・・・XPERIA mini pro SK17

HTC Desire(SIMロックフリー版)をS-OFFしてみた

HTC Desireの海外SIMロックフリー版(以下、本エントリにおいてはDesireといいます。国内版X06HTとは異なります)でS-OFFしてみたのでその備忘録です。S-OFFとは”Security Off”とのことらしい。メーカー側の安全装置(S-ON)を解除する作業のため、本当に文鎮化してしまう可能性があるので非常に危険のようです

What is S-OFF? – [TUTORIAL] How to S-OFF your HTC Desire
HTC implemented security on their newer generation phones. This flag, called @secuflag, controls whether your phone has it’s NAND or flash unlocked. Most noticeably, S-ON (security on) will read-lock your /system and /recovery partition, to name a few. Also, secuflag controls whether zip files being flashed through recovery or fastboot, are signed by HTC.
The now notorious S-OFF (security off) will disable this NAND security.

root化しただけでは完全に自由な状態ではありません。NANDといわれるシステムを格納する内蔵フラッシュメモリはロックされた状態であるため、システム領域にファイルを書き込む場合は、カスタムリカバリを起動した状態でAndroid SDKのadbコマンドやadb shellでログインする、または署名付きZIPファイルのflashが必要です。これがS-ONの状態であり、Desireは起動するとシステム領域はRead-only file system状態になります。S-OFFするとDesire起動中でも書き込み可能になります。

S-ONとS-OFFはブートローダーを起動させた状態で確認できます。

S-ONの状態(Eclair時の画面)

S-OFFの状態(FroyoにアップデートしてS-OFF実施後)

S-OFFにあたり次のサイトを参考にさせていただきました。
[TUTORIAL] How to S-OFF your HTC Desire
HTC Desire X06TをS-OFFする

Googleで検索してもS-OFFに関する情報はあまりないように思います。ただし、どこのサイトをみてもその危険性について触れています。自己責任において実施する必要があります。

用意したもの
HTC Desire(欧州版SIMロックフリー)をroot化
Windows7機(USBブート可能であること)
USBメモリ(1GB)

ブート可能なUSBメモリを作る
Universal USB Installerをダウンロードし、Windows7機にインストールし、USBメモリに焼くイメージファイルAlphaRev1.5をダウンロードします。

USBメモリをPCに接続してUniversal USB Installerを実行します。Linux Distributionを選択するようですが、よくわかりませんでしたのでドロップダウンリストの一番下にあった”Try Some Other Live Linux ISO”を選択しました。イメージファイルにはダウンロードしたalpharev.isoを指定します。USBメモリのドライブを指定して実行します。



S-OFFを実行
USBメモリを接続した状態でWindowsマシンを再起動します。起動時にブートドライブを選択します。ブートメニューを出すためにEscキーやファンクションキーのいずれかを押すのが一般的だと思います。ブートドライブをHDDではなく、USBメモリを接続したドライブを指定します。
以下の通りディスプレイに文字が流れてきます。「文鎮化する可能性がありますが本当に実行しますか?」という確認があります。続ける場合は何かキーを押します。

===================================================
= Welcome to the AlphaRev 1.5 S-FF HBOOT flasher ==
===================================================
This will provide you with the most current HBOOT for your phone,
patched to ignore security and to provide extended fastboot commands.
Remember : your phone needs to be rooted already. This program will not do tht for you.
Please note that this will NOT set the actual security flag (@secu_flag) in
the radio NVRAM (radio S-OFF), you will this change your CID.
Instead, this HBOOT will ignore the security flag.
This means that if you ever update to an official RUU that has a HBOOT update in it,
this custom HBOOT will be removed and you will lose all root/security-ignore capabilities.
It is possible to circumvent this by removing HBOOT updates from the RUU you want to flash,
since you will have the possibility to flash unsigned updates due to security-ignore.
Please remember that a HBOOT update is a critical part of you phone, if anything goes wrong,
this WILL brick your phone.
AlphaRev is NOT responsible for any bricks, murdering your cats, exploding phones or any other damage
this might incur. By continuing, you state that you are fully aware of the risk and accept it.
Press any key to continue . . . sd 4:0:0:0: [sdb] Assuming drive cache: write through
sd 4:0:0:0: [sdb] Assuming drive cache: write through
sd 4:0:0:0: [sdb] Assuming drive cache: write through

これが出てきたら起動した状態のDesireをPCに接続し、USBデバッグモードにします。中止する場合はDesireをPCに接続しないでください。これが中止できる最後のチャンスです。

Please connect your phone via USB while booted up, and enable USB debugging.
============================================================================

Desireが認識されますので、あとはStep1からStep3までの作業が自動で実行されますので完全に終了するまでじっと待ちます。10分程度で完了しました。

Waiting for your device… FOUND!
Identifying your phone:
Detected Model ID: PBXXXXXXXX
Device model: Bravo (HTC Desire)
CID: HTC__032
HBOOT version: 0.93.0001
Pushing necessary files to the phone..DONE.
Step 1 of 3 is done, rebooting your phone.
Waiting for bootloader..OK!
Booting to android for the next step.
Waiting for your device…FOUND!
Waiting for Android to boot, dozing off for about 30 seconds while we wait.
Step 2 of 3 is running..
Preparing your phone for HBOOT flash..DONE.
Rebooting your phone.
Waiting for bootloader..OK!
Step 3 of 3 is starting. During this step, your phone will seem to hang on the HTC splash screen.
This is normal. DO NOT TURN OFF YOUR PHONE DURING THIS STEP, HBOOT is being flashed during this stage,
and turning it off WILL *BRICK* your phone!
Waiting for flashing to complete…
HBOOT was flashed successfully! You can now truly take control of your secrity-ignore-bootloader Android phone!
This flashing method was brought to you by AlphaRev.
Big thanks to everyone at the unrEVOked team for their NAND unlock method and guidance.
Rebooting your phone to bootloader… Enjoy your new found freedom!
Press any key to shutdown, the procedure is finished.

ここまで表示されたら終了です。何かキーを押してシャットダウンします。ボリューム(マイナスボタン)を押しながら電源ボタンを押してブートローダーを起動します。S-OFFに変わっているはずです。

S-OFFするとカスタムリカバリにアクセスできなくなることがあるようですが、今回はS-OFF後も問題なくClockworkModのカスタムリカバリが起動しました。



HTC Desire(SIMロックフリー)のroot化とHTC Senseを使いやすくするための備忘録

HTC Desire(SIMロックフリー版)がHTC台湾工場で修理を終えてから2ヶ月ほど経過しました。故障の直接の原因ともなった基板の発熱による無限リブート現象は姿を消し、若干の発熱は見られるものの何ら問題なく利用できています。ノーマル状態ではCJKフォントがなんともダサイいですし、メッセージアプリが使用できないのが不便であるため、再度rootを取ることにしました。自分の設定などを備忘録として残しておきたいと思います。
※HTC SenseのROMに満足しているのでカスタムROMはあまり考えていません。

root化した後はプログラムにSuperuserが追加されている
desire-rooted

注意喚起情報
root化はメーカー保証対象外となるほか、文鎮化する可能性もありますので自己責任で実施しましょう。この意味が分からない方はやらない方がよいです。またこの機種はソフトバンクが販売していたX06HTとは異なりますので下記の通り操作しても動作するかは不明です。

参考エントリ
HTC Desire(SIMロックフリー)をHTC台湾工場へ修理に出した顛末記

root化したHTC Desireの情報
欧州版HTC Desire(SIMロックフリー)
HBOOT 0.93.0001
RADIO 5.09.05.30_2
Android2.2(Froyo)

準備するもの
Android SDK – Download the Android SDK
Rooting and Reflash tool – unrevoked V3.21
Mac環境で実施しています。

HTC Desire(SIMロックフリー)のroot化
Desireを母艦のMacに接続
設定>アプリケーション>開発>USBデバッグにチェックを入れる
Mac側でunrevokedを実行

unrevoked321.png

以下の確認メセージが出るのでroot化のリスクが理解できたらOKボタンをクリック


unrevoked321-msg.png

何度かリブートを繰り返してRecoveryモードに入ったら、”reboot system now”を選択します。これでroot化完了です。

rootが取れていることを確認する
プログラムに”Superuser Permissions”という忍者アイコンが追加されています(上のスクリーンショット)。あるいは次の手順でSDKから確認することもできます。この手順はフォント入れ替え等、HTC Desireにおけるroot権限で操作する基本となるものです。

  1. HTC Desireをシャットダウン(Macに接続したままでOK)
  2. ボリュームボタンのマイナスを押しながら電源を入れる
  3. bootloaderが起動したら”RECOVERY”を選択

    bootloader-menu.jpg
  4. リカバリーメニューが起動

    recovery-menu.jpg
  5. Mac側でTerminalソフトを起動
  6. SDKにPATHを通していなければそのサブディレクトリのtoolsに移動
  7. “sudo ./adb shell”を実行しパスワードを入力
  8. プロンプトが”# “になっていればrootを取れています
  9. “Reboot system now”で再起動

ROM Managerのインストール
ROMのバックアップやリストア、カスタムROMのダウンロード、SDカードのパーティション設定などがアプリで可能になります。有料版の”ROM Manager Premium”を購入しました。利用するためにはroot権限が必要になりますので、”ACCEPT”を選択します。Superuserを起動するとACCEPTしたアプリの一覧が確認できます(下のスクリーンショット)。まず、現時点のバックアップを取っておき、”Desire.org”などのファイル名をつけておきます。


superuser.png

日本語フォントの差替えと絵文字の追加
HTC Desire(おそらくAndroid端末全部)には日本語専用フォントが入っていません。日本語のように見えるのは韓国語と中国語に対応したCJKフォントと言われる統合漢字フォントであるため美しくありません。また絵文字の入ったメールが届いても□が表示されて、文字化けしてしまう場合があります。

こちらのサイト(Android Custom Cookbook: 手順書/フォント変更)を参考にさせていただきました。フォントを用意(ライセンスに注意)し、ファイル名をそれぞれ次の通りにします。

日本語:DroidSansJapanese.ttf
絵文字:DroidSansFallback.ttf

2つのファイルを、HTC DesireをUSBケーブル接続し、接続タイプを”外部メモリーモード”にしてmicro SDカードにコピーしておきます。
HTC DesireはNexus Oneと違ってROMが起動しているとroot権限での操作ができません(情報提供Thx:takada_">@takada_)ので一旦、シャットダウンし、Recoveryモードで起動します。あるいはROM Managerアプリの”リカバリへ再起動”からRecoveryモードを起動します。USBケーブルでMacに接続した状態でTerminalから操作します。

$ sudo ./adb shell
# mount /sdcard/
# mount /system/
# cp /sdcard/DroidSansJapanese.ttf /system/fonts/
# cp /sdcard/DroidSansFallback.ttf /system/fonts/
# reboot

再起動すると変更したフォントが反映されているはずです。

SoftBankの黒SIMカードでMMSを使う
HTC標準のMessageアプリではSoftBankのMMSサービス使うことができません。2010年10月8日、Androidマーケットにリリースされた”SoftBankメール”を使用しますが、標準Messageアプリと競合してしまうため、今後使用する予定もないことから削除することにしました。また、APNも黒SIM用に設定しておく必要があります。

参考エントリ:HTC Desireで黒SIMのMMSができた

APN設定内容
APN: smile.world
Username: dna1trop
Password: so2t3k3m2a
MMSC: http://mms/
MMS proxy: smilemms.softbank.ne.jp
MMS port: 8080
APN type: default,supl,mms

標準Messageアプリを削除する
Recoveryモードを起動し、TerminalからHTC Desireにアクセスして、アプリを削除します。
$ sudo ./adb shell
# mount /system/
# rm /system/app/Mms.apk
# rm /system/app/Mms.odex
# reboot
Android MarketからSoftBankメールをインストールすると、それまでエラーで送受信できなかったMMSメールが使えるようになりました。

光学トラックボールにスリープ復帰を割り当てる
スリープ状態から復帰するときに、本体上辺の電源/スリープボタンを押すのが面倒なので光学トラックボールにスリープ解除を割り当ててみました。参考サイトの匿名投稿の方法を試してみました。
参考サイト:Desireのスリープ復帰を電源ボタン以外に割り当てる方法

  1. curcial-oj.klというファイルを作り、key 272 DPAD_CENTER WAKE_DROPPED と書いて保存します。必ず改行を加えてください。改行がないと正しく動作しませんでした。ファイルはSDKのtoolsディレクトリに保存しておきます。
  2. DesireをRecoveryモードに入れます。
  3. Terminalを起動し、SDKのtoolsディレクトリに移動します。次のコマンドを入力します(microSDカードを経由しない方法)。
    $ sudo ./adb shell mount /system/
    $ sudo ./adb push ./curcial-oj.kl /system/usr/keylayout/
  4. 本体を再起動します。

これで完了です。curcial-oj.klにある”key 272″は光学トラックボールに割り当てられたキーアサインで、他のボタンには違う番号が割り当てられています。確認するには、ClockworkModのリカバリイメージであれば、メニューの”advanced”から”Key Test”を選択して、ボタンを押してみると番号が表示されます。

バカでかい起動音を消音化する
DesireがEclair(Android2.1)だった頃に起動音が大きいのは有名な話です。それを消すためにはシャットダウン時にサイレントにしておくか、”Silent Boot”というアプリを使う方法がありました。Froyo(Android2.2)になってからは起動音が小さくなってヤレヤレと思っていたのですが、root化が原因かは不明ですが、rootを取ってからまた大きな起動音に戻ってしまいました。これを完全に消音化してみました。

UIやRingtoneは”/system/media/audio/”の下にありますが、起動音は”/system/customize/resource/android_audio.mp3″にありました。これを無音のmp3に差し替えるだけです。

  1. 無音のandroid_audio.mp3を作ります。ファイルはSDKのtoolsディレクトリに保存しておきます。
  2. DesireをRecoveryモードに入れます。
  3. Terminalを起動し、SDKのtoolsディレクトリに移動します。次のコマンドを入力します(microSDカードを経由しない方法)。rw権限の修正もしておく。
    $ sudo ./adb shell mount /system/
    $ sudo ./adb push ./android_audio.mp3 /system/customize/resource/
    $ sudo ./adb shell
    # chmod 644 /system/customize/resource/android_audio.mp3
  4. 本体を再起動します。起動音はありません。

オリジナルと無音のandroid_audio.mp3はこちらにアップロードしました。
無音:http://www.mediafire.com/?70pix16dm014e1q
オリジナル:http://www.mediafire.com/?omqj7g7b8178izm

続きを読む HTC Desire(SIMロックフリー)のroot化とHTC Senseを使いやすくするための備忘録

[UPDATE2]Nexus OneのカスタムROMとか導入してみた

Androidってよくわかんない。iPhoneのSpirit、PwnageTools、redsn0wなどのようなjailbreakツールがないので(あるのかもしれないが)、初心者にとっては取っ突きにくい感じ。実際、結構しんどい。(iPhoneとの比較ばかりになるが)iPhoneと違ってハードの種類がたくさんあるし、Android2.2(Froyo)も出たばかりなので、自分が何から始めたらよいのかがイマイチわからない。正しい方法か、順番か、ファイルかわからないけど備忘録として残しておく。


R0010733

Bootloaderをunlockする

メーカー保証がなくなるので一瞬だけ躊躇した。Android SDKは既にインストールしてあるので、fastboot.zip( How to unlock the bootloader on your Nexus One)をダウンロード・解凍。Nexus Oneの電源オフにして、トラックボールを押しながら電源オン。BOOTLOADERメニューが出てくるので、FASTBOOTを選択した状態で電源ボタンを押す。母艦に接続してTerminalから “./fastboot-mac oem unlock” と入力。”Yes Unlock bootloader(and void your warranty)”を選んでreboot。

リカバリイメージを書き換える

リカバリイメージをダウンロード([Recovery] [30-May-2010] RA-nexus-v1.7.0.1)する。NormalとCyanogenMODがあって、どういう違いがあるのかわからなかったのでNormalバージョンにした。ただ、この後に導入するCustom ROMはCynogenModだったのでCyanogenMODバージョンを入れた方が良かったのかも。
電源オフにして、トラックボールを押しながら電源オン。BOOTLOADERを選択。母艦のTerminalから “$ ./fastboot-mac flash recovery recovery-RA-nexus-v1.7.0.1.img” と実行する。

root化する

nexus-addon-0.1-signed.zip をダウンロードし、Nexus Oneに挿入してある microSD にコピー。Nexus Oneを電源オフ。トラックボールを押しながら電源オン。RECOVERYを選択してリカバリーモードへ。一応、メニューのbackupでroot化するまえの状態でバックアップをとっておく。次に”Flash zip from sdcard”からコピーしたnexus-addon-0.1-signed.zipを選択する。終了したらreboot。

カスタムROMをインストールする

カスタムROMはいろいろあるようだけれども、よく見かけるCyanogenModのものを入れてみた。update-cm-5.0.7.1-N1-signed.zipgapps-passion-EPE54B-signed.zip をダウンロードして、microSDにコピーする。リカバリーモードに入ってwipeで”Wipe data/factory reset” を選択し、”Flash zip from sdcard” でダウンロードしたzipファイルをインストール。完了後にreboot。


cm5071-n1

—- Updated on June 15, 2010 —-
CM-5.0.7.1はApps2SDにも対応しているようなので入れてみた。iPhoneと違って本体側のメモリが少ないのでインストールできるアプリの数に制限が出たりするらしい。標準では本体デバイス側にしかインストールできないが、これを導入するとmicroSDカード側にインストールするできる。


apps2sd

SettingsのApplicationsを見ても、Apps2SDの項目が非活性化の状態なので、microSDカード側のパーティンション設定してやることで選択可能になる。


R0010742

まず、Nexus Oneを再起動してリカバリーモードへ。メニューから”Partition sdcard”を選択し、SDカードをフォーマットするが、このときswap=0、ext2=512MBに指定する。フォーマットが完了したら、メニューから”SD: ext2 to ext3″を選択して処理完了したら、今度は”SD: ext3 to ext4″を実行する。終了したらreboot。

SettingsのApplicationsでApps2SDの項目が活性化されているはずなのでチェック。Manage applicationsでインストールされているアプリがどこにインストールされ、データ容量などが確認でき、microSDカードに移したり、戻したりすることができるようになる。System系はコワイのでそのままにしてある。

—- Updated on June 18, 2010 —-
Android2.2(Froyo)には標準装備されているテザリング機能。Andoroid2.1(Eclair)ではroot化することでカスタムROMを適用することでも、Andoroid Marketからアプリをインストールすることでも可能になる。Nexus Oneを黒SIMで運用しながら、iPhoneを使いたくなることもある。こんなときにテザリングは威力を発揮してくれる。せっかくCM-5.0.7.1を適用しているので他の方法でインストールしてみた。

まず、wireless_tether_2_0_5-pre2.apk をダウンロードし、microSDのdownloadディレクトリにコピーする。Settings>ApplicationsでUnknown sourcesにチェックし、Nexus One側のファイルマネージャー(例えばASTRO File Manager)から先程コピーしたファイルをタップしてインストールを選択するだけ。


wireless-tether

[UPDATE1]HTC Desireで黒SIMのMMSができた

HTC Desire SIMロックフリー版で黒SIMのMMSを利用できるようにしたのでその備忘録。Android初心者なのでroot化が前提の作業で不安を抱えながらだったけど、なんとかできた。iPhoneのJailbreakのように紹介サイトがすくなくこの手順があってるかわからないけど忘れるといけないのでその記録を残しておく。

HTC Desireが自分のメインになれない理由のひとつに「MMSが利用できないこと」があったので、これで利用する頻度が増えそう。

メッセージの送受信した相手別に表示
5-mms-all-thread

注意喚起情報
HTC Desire SIMロックフリー版のためSoftBankから発売されたX06HTとは異なります。

参考サイト
root化:24/May r5 – HTC Desire rooting guide – now with HBOOT 0.80 and OS to 1.21 support
MMS導入:HTC Desire(X06HT)で Softbank MMS対応する方法 Mms.apkの差し替え

準備する
Android SDK
root化したHTC Desire本体(参考サイト)
Mms.apk(参考サイト)

始める

  1. 母艦にDisk driveモードで接続し、Yokin’s Studioさんのサイトからダウンロードした”Mms.apk.jakeMod3″をSDカードにコピー。
  2. USB debuggingモードにする。Settings>Applications>DevelopmentからON/OFFできる。
  3. 電源OFFして、戻るボタンを押しながら電源ON。
  4. “BOOTLADER”を選択した後のメニューで”RECOVERY”を選択する。ここで本体が再起動し、赤い三角形のマークが画面中央に表示された状態になる。
  5. Terminalからroot化する際にダウンロードしたZIPファイルに含まれる”recovery-mac.sh”(Winマシンなら多分”recovery-windows.bat”)を実行しSystem Recoveryモードに入る。

    Android system recoveryに入ったところ
    desire-recovery2

  6. TerminalでAndroid SDKのtoolsディレクトリに移動し”./adb shell”を実行。root化されていればプロンプトは”#”になっているはず。
  7. そのまま以下のコマンドを実行。

    # mount /sdcard/
    # mount /system/
    # cp /sdcard/Mms.apk.jakeMod3 /system/app/mms.apk
    # cd /system/app
    # rm Mms.odex
    # reboot

  8. HTC DesireのMessagingを起動するとビジュアルが変わっているはず。menuボタンからSettingsに入り”Custome User-Agent”で”iPhone(3.0)”を選択。
  9. HTC Desire本体のMMSに関する設定を以下のとおりにする。Settings>Wireless&networks>Mobile networks>Access Point Namesを選択して、APN設定がされていない状態であれば、menuボタンからNew APNで新規作成する。

    APN: smile.world
    Username: いつものやつ
    Password: いつものやつ
    MMSC: http://mms/
    MMS proxy: smilemms.softbank.ne.jp
    MMS port: 8080
    APN type: default,supl,mms (ブランクでもいいかも)

参考スクリーンショット
TOPに表示した画像はMessagingを起動したところ。送受信した相手が一覧で表示され、名前の脇に括弧内に送受信合計件数が表示されるほか、最後に送信または受信した時間、タイトル名が表示される。画像は連絡先に登録されているものが使用される。以下、メッセージの作成画面と相手とのやりとりをスレッド表示したところ。

メッセージの作成画面でメニューボタンを押したところ
2-edit-mms

相手との送受信記録がスレッド表示
4-mms-thread

動作環境
 HTC Desire SIMロックフリー版(root化済み)FW2.1-update1
 MacBook(MB404J/A) Mac OS X 10.6.3

HTC Desire SIMロックフリー版でrootを奪取【動画あり】

HTC Desire SIMロックフリー版のroot化が可能ということをツイッター上で知り、実行してみたのでその備忘録というか苦労話。Nexus Oneではroot化の話題をよく見かけていたので、HTC Desireも同じAndroidベースだしカンタンなのでは?とおもっていたが、全然違った。考えてみれば当然のこと。iPhone Jailbreakでも同じことだがOSバージョンやハードウエアによってExploitは違うので実行方法は異なるわけで。

snap20100501_215218

注意喚起情報
SIMロックフリー版とは国内で発売されたSoftBank X06HTと異なり、特定キャリアのSIMカードに利用が制限されていない端末のこと。また、わたしはAndroid端末に触れて1週間の素人です。この記事を見ておかしくなったというようなクレームを受けても何のサポートもできません。いろいろリスクがあるようですので自己責任でどうぞ。

参考にさせてもらったのは “29/Apr r3 – HTC Desire rooting guide (now with new improved / easier root method!)” のサイト。Paul氏はAndroidのroot化のツールや方法などを産み出すハッカーで、iPhoneのJailbreakでいうところのDEV-TEAMやGeohot氏的な存在なのかな。

と思ったら日本語で紹介されているサイトが既にありました。こちらも有名なサイトだったり?
【ご参考】HTC Desire rooted手順

事前準備1(ブートローダーのバージョン確認)
HTC DesireのBootloaderのバージョンが0.75以下でないとダメらしい。本体の電源OFFで下のバックキーを押しながら電源を入れると通常起動とは異なるメニューが出てくるのでそこでBootloaderのバージョンを確認する。手元の端末は運良く(?)0.75なのでroot化は可能な様子。

事前準備2(Goldcardの作成)
Amexではダメですか?と思ったくらいなんのことかわからなかったが、カスタムブートローダーを準備をしておくmicroSDカードのことと理解(違うかもしれないが)。使用したのは Kingston microSDHCカード(class10/16GB)。Android SDKと必要なJavaは予めインストールしておく必要がある。コマンドを叩いて必要なコードを入手してWeb経由でイメージファイルをメールで受け取る。そのgoldcard.imgファイルをHex Editorで特定部分をディスクイメージにコピーしてmicroSDカードに保存するとGoldcardの出来上がり。手間はかかるがインストどおりにこなせば問題ない。

ちょっと面倒だったのは、自分がMacベースの環境だったこと。Hex deitorはWin版しかないのでgoldcard.imgをメールで受け取った後の作業はすべてWindowsマシンで実行した。

ISOイメージを使ったLinuxベースのブート
root化ツールをダウンロードし、それでブート(CDに焼くかVirtual PCでと)させろという指示。これがなかなかうまくいかなかった。できる人にはアタリマエのことだが、今振り返ると一番つまずいた部分になった。自分の環境はMac/Winしかないので、CDに焼いてブートさせてみたが、通常通りMacやWinが起動してインストにあるメニューが出てこない。しばらく悩み、Macに入れてあるVMware Fusionがあることを思い出し、メニューの仮想マシン>CD/DVD>ディスクイメージの選択、でISOファイルを入れても上手くいかない。

何が悪いのかわからず、VMware Fusionのヘルプを見にウェブサイトへ。そこにあったのが”VMware Player”という仮想マシンをLinux/Windows上で動かすというもの。無料なのですかさずWindowsマシンにインストールしてISOイメージを読み込ませたら一発で起動した。それまでの苦労はなんだったのかと。。。Ubuntu10.04をMacのFusionに入れたりして相当時間をロスしてしまった。。。

関係ないUbuntu10.04をインストールしたり…
Ubuntu

VMware Player(無償)をインストールしたら一発で起動
vmwareplayer

あとは淡々と
あとはインストどおりコマンド叩いたり、Desireを母艦PCに接続したり、ボリュームでメニューを選択するなど。2chの【android】HTC総合 part3 のスレも参考情報にしたところ、母艦接続時にDesire本体が認識されなかったり、step2でうまくいかなかったりなどのトラブルが出る人もいたようだが、自分は特段そのようなこともなくすんなりと完了した。

R0010413

最後に
root化終了後に普通に起動してしまったので、どうやってroot獲れたことをどう確認するかもわからず(たとえばiPhone Jailbreakならhome screenにCydiaのアイコンがあるとか)。どうしてもスクリーンショットをSDKなしに取りたいと思っていたのでShootMeというroot権限必須アプリを入れてみたところちゃんと機能した!その後、ツイッターで教えていただいたのは、adb shellでプロンプトが”#”になることや、Settingsの中に忍者が潜んでいたりすること。なにはともあれできたらしい。満足、満足! 作業の様子を動画にしてみた。