2012年7月31日火曜日

XPERIA acro HD (KDDI IS12S)にICSがやって来た! だったらrootも維持してアップデートしましょ♪

ついに本日午後(2012年7月31日 16:00ごろから?)、XPERIA acro HDに待望のAndroid 4.0.4 (ICS)へのアップデートがやってきました!
といってもKDDI IS12Sだけですが…。
docomo SO-03Dな方々、ゴメンナサイ。
※ドコモ版については、ケータイ watchの記事にキナ臭い話も上がっててチト心配ではあります。

ICSが来たんだから、せっかく2.3.7で奪取したrootを維持したままアップデートしてやろうというのが今回の趣旨です。

※※※ root維持の何らかの対策しないで4.0.4にアップデートしちゃった方へ ※※※
4.0.4の脆弱性を突くには、/data/local/tmpが書き換え可能な状態である必要があります。
ですが、4.0.4では shellユーザに/data/localの書込権限が無いため、これはできません。
したがって、2.3.7の状態でrootを取得してから再度アップデートになります。(残念ですが初期化込みです)
ただし、/data/local.propが有って、書き込み可能なら望みはありますよ。バッチを改造してみてくださいね♪

【注意事項】
メーカー及びキャリアの保証外の行為です。何があってもキャリアショップに駆け込むような厄介行為はやめてください。
全て自己責任にて実施してください。
※ 毎度ですが、絶対のお約束ですよ♪

root keeper for IS12S GB to ICS (ver 1.0.0)
http://www.mediafire.com/?jm09ql65inavjx3

【前提条件】
・ Android 2.3.7の状態でrootを取得していること

【事前準備】
(1) root keeperのzipファイルを適当なフォルダに展開
(2) 必要ファイルをfilesフォルダにコピーする
※例によってfilesフォルダはカラなので、"rooting toolkit for XPERIA acro HD (ver1.0.1) KDDI IS12S / docomo SO-03D 両対応版"の実施時に集めたファイル達をそのまま置きます。
(3) 端末側設定「提供元不明アプリ」の有効化
(4) 端末側設定「USBデバッグ」の有効化
(5) CWMをインストール済みなら、フルバックアップを取っておきましょう♪

【手順の概要】
(1) Android 2.3.7の状態でshell root維持のための準備
(2) PCを使ってAndroid 4.0.4へのアップデート
(3) root keeperの実行

※ Sony Update Service (旧SEUS)を使う手順になっていますが、PC Companionでも初期化しないでアップデートはできるはず
※ SEUSの方が好みなのです…

【実施手順】
(1) acro HDをPCに接続してstep1.batを実行

(2) 一旦、acro HDの電源を切り、PCと繋いでいるUSBケーブルを抜く

(3) Sony Update Serviceを起動

(4) Xperia acro HDを選択して、「次へ」 ボタンを押下

(5) acro HDのボリュームダウンキーを押しながらPCと接続

(6) 「アップデート(推奨)」を選択し「インストール」ボタンを押下 ※初期化しません!!

(7) アップデートファイルのダウンロードと適用が始まるので完了までしばし待つ

(8) アップデートが完了したら「終了」ボタンを押下

(9) acro HDの電源を入れ、起動するまでしばし待つ

(10) acro HDをPCに接続した状態でstep2.batを実行 ※もしかしたら再起動しちゃうかも?

(11) acro HDをPCに接続した状態でstep3.batを実行

(12) 再起動し終わったら作業完了です♪

【作業後の確認】
ちゃんとrootが維持されているか確認してみます♪ 

カーネルバージョン: 3.0.8+1.0.21100-30145-01939-gdb61f60
ビルド番号: 6.1.D.0.170

※※最後に重要注意事項※※※
これまでAndroid 2.3.7用にリリースした12トグルやカーネルモジュールは使えません!!
12トグルを適用すると 文鎮するかと思いますので絶対ダメですよ!!!

XPERIA mini pro SK17iを今更ながら輸入してみた。

今更ながらXPERIA mini pro SK17iを輸入してみました。

注文したところは、その界隈では有名な 1ShopMobile.com
結構粗相があるというのが気になるところですが、結構な円高になっているのと日替わりの値引きが$18にもなっているのもあり注文してみました。


金曜のお昼休みに注文、通関は土曜で日曜早朝には地元郵便局に到着していて受取とか、ヘタな国内通販より海外通販の方が早いってどういうことでしょうか?w

その昔、Smart Qという Android端末をDXで注文してから受取までに2ヶ月かかったのを考えると信じられないスムーズさで、正直驚いてます。

2012年7月29日日曜日

自宅がいつの間にかXiエリアになっていた

いつの間にか自宅がXiエリアになってました。
L-09Cを使い始めて初めて気付いたので、いつから対応になったのかはわかりません…。

というのは、L-09Cが来るまで我が家唯一のXi端末だったArrows Tab LTE (F-01D)は、自宅や最寄駅近辺ではLTE表示にならなかったので全く気が付きませんでした。
※L-09Cでは「LTE」アイコンになりますが、F-01Dは「3G」のまま

元々7月末までにエリア化予定の地域なんでいつからだろう?と思ってましたが、L-09C買って無かったら気付かずドコモにクレームするところだったよ♪

2012年7月25日水曜日

Motorola Electrifyの裏ブタが届いた♪

記憶から忘れ去られていた Motorola Electrifyの裏ブタが届きました♪


Motorola Electrifyとは、US Cellularから発売されている端末で、Photonと微妙に配色が違うくらいの機種です。
中身は WiMaxが無い劣化版ですがw

実を言うと発注したのは今年の1月末。
Sprint版の裏ブタに交換するのが回りで流行っていて、みんなと同じだと面白くないのでElectrifyのをcnn.cnに発注していましたが、今頃になって…。


なんでこんなに遅くなったのには訳があって…。
香港のCellular Nationwide Network(cnn.cn)に注文したのは1/29。旧正月なこともあり到着は2/8
しかし、届いたのはSprint版の裏ブタという粗相!
cnn.cnに問い合わせたら、在庫が無いけど入荷したら代品送るし、Sprint版は返却しなくても良いということで待ってましたが、待てど暮らせど来ないんで、代品が来ることするら忘れていましたw

こっちが忘れるくらいの時間が経ったものの、ちゃんと約束守って代品を送ってきたcnn.cnはエラいぞw
まぁ、大幅納期遅延だけどナーw

2012年7月22日日曜日

IS12SのKernel Moduleをビルドする

XPERIA acro HD KDDI IS12Sのカーネルモジュールをビルドしたので備忘録。
CentOS 6でやってます。Debianとかもで大丈夫かと。

今回作ったもの
・ nls_utf8.ko
・ ntfs.ko
※IS12Sではcifs, slow-work, tunなど欲しいものは意外と組み込み済みだったります。

用意するもの


クロスコンパイラの導入

ウチでは /optにandroid-ndk-r5c-linux-x86.tar.bz2を展開しました。
# cd /opt
# tar jxvf ~huhka/android-ndk-r5c-linux-x86.tar.bz2

ソースの準備

ウチではホームディレクトリ以下に android/kernel/6_0_D_0_274を作って展開しました。
※基本的には展開場所はどこでも大丈夫
$ mkdir -p /home/huhka/android/kernel/6_0_D_0_274
$ cd 6_0_D_0_274
$ tar jxvf ../6_0_D_0_274_tar.bz2

実機のカーネルバージョンにあわせるためパッチあて
パッチあて対象:kernel/arch/arm/configs/fuji_hayate_defconfig
*** fuji_hayate_defconfig.org 2012-06-13 20:00:33.000000000 +0900
--- fuji_hayate_defconfig 2012-07-15 23:37:22.000000000 +0900
***************
*** 36,42 ****
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_CROSS_COMPILE=""
! CONFIG_LOCALVERSION="-307005"
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_HAVE_KERNEL_GZIP=y
CONFIG_HAVE_KERNEL_LZMA=y
--- 36,42 ----
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_CROSS_COMPILE=""
! CONFIG_LOCALVERSION="-307005+"
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_HAVE_KERNEL_GZIP=y
CONFIG_HAVE_KERNEL_LZMA=y

ビルド

まずは.configを作る
$ ARCH=arm CROSS_COMPILE=/opt/android-ndk-r5c/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/arm-eabi- make fuji_hayate_defconfig
※実際は1行で改行なし

次はmenuconfig
$ ARCH=arm CROSS_COMPILE=/opt/android-ndk-r5c/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/arm-eabi- make menuconfig
※実際は1行で改行なし

File systems → Native language support → NLS UTF-8 を"M"(モジュール)に
File systems → DOS/FAT/NT Filesystems → NTFS file system support を"M"(モジュール)に
NTFS file system support配下のものも選択
・ NTFS debugging support
・ NTFS write support

モジュール個別にビルド
$ ARCH=arm CROSS_COMPILE=/opt/android-ndk-r5c/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/arm-eabi- make prepare
$ ARCH=arm CROSS_COMPILE=/opt/android-ndk-r5c/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/arm-eabi- make scripts/mod/
$ ARCH=arm CROSS_COMPILE=/opt/android-ndk-r5c/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/arm-eabi- make M=fs/nls/
$ ARCH=arm CROSS_COMPILE=/opt/android-ndk-r5c/toolchains/arm-eabi-4.4.0/prebuilt/linux-x86/bin/arm-eabi- make M=fs/ntfs/
※実際は各1行で改行なし

nls_utf8.koとntfs.koができたので端末に持って行って読み込ませればOK♪
# insmod nls_utf8.ko
# insmod ntfs.ko

koを読み込んだ時に
insmod: init_module 'nls_utf8.ko' failed (Exec format error)
などとエラーになったら、dmesgしてみましょう♪

2012年7月21日土曜日

XPERIA acro HD KDDI IS12S関連ファイル置き場

Android 2.3.7向けCWM用ZIPファイル


・ 通知領域12トグル
※ SystemUI.apk,SystemUI.odex,framework-res.apkを置き換えるのでオリジナルは要バックアップ
→ 設置方法
→ 自力でapkを弄る人へのガイド

ビルド番号 6.0.D.0.272 / カーネルバージョン 2.6.35.11-307005+ 向けファイル


・ nls_utf8.ko
※cifsとslow-workはカーネルに組み込まれています

・ ntfs.ko

※カーネルモジュールは対象のカーネルバージョン専用です


2012年7月8日日曜日

12トグル設置方法

XPERIA acro HD KDDI IS12Sの通知領域に12トグルを設置した件、CWM用のzipにしました。
acroHDStatusBar12Toggles4IS12S-6.0.D.0.274.zip
※ docomo SO-03Dでは試してません。
※ docomo SO-03Dでは再起動ループになっちゃうようなので使えません!!
※ うまく行かない人が多いようなのでリンクは削除しました (7/12)

【注意事項】
オリジナルの下記ファイルを削除するのでCWMでバックアップを取ってから実行してね♪
・ /system/app/SystemUI.apk
・ /system/app/SystemUI.odex
・ /system/framework/framework-res.apk


【実施手順】
zipファイルを/sdcardに置いてCWMを起動。
メニューから "install zip from sdcard" を選択。

[CWMでの操作方法]
・上下の移動はボリュームキー
・決定はホームキー
・戻る場合は戻るキー


"choose zip from sdcard" を選択。

sdcardから "acroHDStatusBar12Toggles4IS12S-6.0.D.0.274.zip" を選択。

確認されるので "acroHDStatusBar12Toggles4IS12S-6.0.D.0.274.zip" を選択。

ここでコンデジのバッテリー切れw

1回目は、なぜか失敗してしまう。
UOTのファイルとかでも失敗するので、なんとも…。
ウチの環境だけ???

そのまま、もう一回やり直す。

2回目は、ちゃんと成功した。
なんでかな?
マウントのタイミングとかが有るのかもしれないけど詳細不明。

CWMから再起動で設置完了♪

【参考】updater-scriptの中身抜粋

--------------- ここから ---------------
ui_print("## Mount File Systems");
run_program("/sbin/busybox", "mount", "/system");
run_program("/sbin/busybox", "mount", "/data");
ui_print("## Copying Files");
show_progress(1.2, 60);
delete("/system/app/SystemUI.apk");
delete("/system/app/SystemUI.odex");
delete("/system/app/QuickPanelSettings.apk");
delete("/system/framework/framework-res.apk");
package_extract_dir("app", "/system/app");
set_perm(0, 0, 0644, "/system/app/SystemUI.apk");
set_perm(0, 0, 0644, "/system/app/QuickPanelSettings.apk");
package_extract_dir("framework", "/system/framework");
set_perm(0, 0, 0644, "/system/framework/framework-res.apk");
ui_print("## done!");
show_progress(0.14, 3);
run_program("/sbin/busybox", "rm", "-rf", "/data/dalvik-cache");
ui_print("## Unmount File Systems");
run_program("/sbin/busybox", "umount", "/system");
run_program("/sbin/busybox", "umount", "/data");
show_progress(1, 0);
ui_print("## Finish!!");
--------------- ここまで ---------------

XPERIA acro HD (KDDI IS12S) 通知領域12トグル設置

やる気無いとか言いつつ、無いと不便なので、通知領域トグルを作りましたw

トグルスイッチ周りは、XPERIA P用のKTG-mod163v0からパクってます。




SystemUI.apkをビルドし直すのに手間取って徹夜してしまったw
apktool if SemcGenericUxpRes.apk
するのが抜けてたよ…。

2012年7月2日月曜日

rooted後の XPERIA acro HD KDDI IS12Sでやったこと

1. Titanium Backupのインストール

CMWがacro HDに未対応な以上、現在はコレしか選択肢無し。


2. カメラのシャッター無音化

飲み会にて食事やお酒の写真を撮るのに必要です。
ほーたーるーいーかー♪とかツイートするので…


3. 不要なアプリの凍結

Titanium Backupで凍結したもの
いまのところ支障無し。
※おサイフ使ってないので、その辺は未検証です。










4. 現時点のアプリ一覧








あとは、バッテリーのパーセント表示と通知領域にトルグ設置くらいかな?

2012年6月27日水曜日

rooting toolkit for XPERIA acro HD (ver1.0.1) KDDI IS12S / docomo SO-03D 両対応版

IS12Sについては、ICS(Android 4.0.4)がリリースされています。
まだICSにアップデートしていない人は、↓の記事に新手順があるので参照のこと。
※ICSが来たことにより新手順の方が文鎮リスク低めです。


※SO-03Dの方はICSがまだなので↓の手順を使うか、ICSが来るまで待って新手順を試すか…


------------------------------------------------------------------------------------------

以下、Android 2.3.7向けの手順です。

rooting toolkit for XPERIA acro HD (ver1.0.1)では、

・ KDDI版 IS12S
・ docomo版 SO-03D

の両対応になりました。
また、バッチの不具合修正。
手順の見直しが入っています。


【注意事項】
・メーカー及びキャリアの保証外の行為です。何があってもキャリアショップに
駆け込むような厄介行為はしないでください。
全て自己責任にて実施してください。

・作業には端末のユーザデータの初期化をともないます。
アプリなどの必要なデータは予めバックアップをしてください。

・作業の途中で、グローバル版の XPERIA S LT26iのROMを焼きますが、
その状態では端末のバッテリーを充電することはできません。
LT26iのROMのままバッテリーが干上がると、電源OFFの状態でも充電できない
ため、SEUSで初期化やFlashtoolでftfを焼くことすらできず文鎮化します。
あらかじめ満充電の状態にしてから落ち着いて作業を行ってください。

・手順は非常に面倒で複雑で、しかも罠だらけです。
ちょっと試してみようと気軽にやると確実に高級文鎮化するので、
バッチを読んで理解できない人、UNIXコマンドが解らない人は、
絶対に無茶しないように…。

・注意事項を読み終わったら、下記名前のファイルをfilesフォルダ内に
作ってからバッチを実行してください。
注意事項を全て読みました.txt

・filesフォルダの中身はカラです。
以下のファイルを集めて配置してから実行してくださいね♪
※バイナリファイルの二次配布しませんのであしからず。


rooting toolkit for XPERIA acro HD KDDI IS12S / docomo SO-03D (ver1.0.1)
http://www.mediafire.com/?l4348umyje8f8bm


○必要ファイルの入手方法
・adb.exe
・AdbWinApi.dll
・AdbWinUsbApi.dll
→Android SDKの Platform-toolsからコピーして配置。

・su
→http://downloads.androidsu.com/superuser/su-bin-3.0.3.2-efghi-signed.zip
  をダウンロード、展開して suを取り出して配置。

・busybox
→http://benno.id.au/android/busybox
  をダウンロードしてそのまま配置。


【実行内容概要】
(1) root権限取得
(2) busyboxインストール
(3) suインストール

【事前準備】
(1) 必要ファイルをfilesフォルダにコピーする
(2) 端末側設定「提供元不明アプリ」の有効化
(3) 端末側設定「USBデバッグ」の有効化
(4) 端末側設定「スリープモードにしない」の有効化
(5) 端末側設定「バックライト消灯までの時間を30分」に設定
※一度消灯すると復帰できない局面があるので重要!!
※画面の輝度は、バッテリーの持ちを考えてできるだけ暗めに!!
(6) 壁紙はデフォルトのライブ壁紙ではなく画像を指定しておく
(7) acro HDのバッテリーを100%まで、しっかりと充電 ※超重要!!!
(8) Generic CH(1257-3740)版 XPERIA S LT26iのROM (6.1.A.0.452)を使用。
http://forum.xda-developers.com/showthread.php?t=1723610
(9) KDDI版 XPERIA acro HD IS12SのROM (6.0.D.0.274)を作成
または
docomo版 XPERIA acro HD SO-03DのROM (6.0.A.5.12)を作成

【実行方法】
(1) 端末をPCにUSB接続して、step1.batを実行。

(2) 端末の電源を切り、LT26iのROM (6.1.A.0.452)を Flashtoolで焼く。
Wipe:ブロックの以下のチェックボックスは外す
・Wipe data
・Wipe cache
・Wipe apps log
Exclude:ブロックのチェックボックスは以下を除いて全て外す
・Exclude partition ※有る場合のみ
Misc:ブロックの No final verificationはチェックする


※焼き終わったら Flashtoolは毎回終了させる。
※終了しないとadb接続が正常にできません。

(3) 端末の電源をオンし、PCにUSB接続して、step2.batを実行。
※この状態ではUSB、充電クレードルともに充電されないため、
※バッテリー切れで文鎮化するので要注意!!

※docomo SO-03Dの場合のみ、
※後のacore暴走で操作不能になる事の対策として、
※Lightning launcherをPlayストアからインストールする。

(4) 端末の電源を切り、acro HDのROMを Flashtoolで焼く。
Wipe:ブロックの以下のチェックボックスは外す
・Wipe data
・Wipe cache
・Wipe apps log
Exclude:ブロックのチェックボックスは以下を除いて全て外す
・Exclude partition ※有る場合のみ
Misc:ブロックの No final verificationはチェックする


※焼き終わったら Flashtoolは毎回終了させる。
※終了しないとadb接続が正常にできません。

(5) 端末の電源をオンすると、最初の起動時はacro HDが勝手に再起動します。
※docomo SO-03Dの場合のみ、再起動前にホーム画面をLightning launcher
※に変更しておく。再起動まで時間が少ないので手早く作業すること!

再起動後に画面にacoreが強制終了したとかのメッセージが出ますが、
とにかくダイアログでボタンを押して画面が落ち着くのを待つのがコツ。
言語選択は「日本語」を設定、KDDIのセキュリティ設定はスキップ
【事前準備】(2)~(6)をやり直す

PCにUSB接続して、step3.batを実行。
繋がらない場合は、Ctrl+Cでstep3.batを実行停止し、再度実行し、
バッチが終了するのを待つ。(ADBDの再起動を待ってます)
※ここで画面が消灯すると復帰できないので、こまめに触って消灯を防ぐ。

(6) step4.batを実行。(実行直後に再起動するかもしれません)
続いてstep5.batを実行。

(7) 端末の電源を切り、acro HDを Flashtoolで焼く。
Wipe:ブロックの以下のチェックは全てチェックする。※これまで逆なので注意!
・Wipe data
・Wipe cache
・Wipe apps log
Exclude:ブロックのチェックボックスは全てチェックする。※これまで逆なので注意!
Misc:ブロックの No final verificationはチェックする


※焼き終わったら Flashtoolは毎回終了させる。
※終了しないとadb接続が正常にできません。

(8) 端末の電源をオンし、SuperUserやTitanium Backup等をPlayストアからインストール

以上


【謝辞】
Ver1.0.1で docomo版 SO-03Dとの両対応にするにあたり、

TwitterID: lizanさん
TwitterID: piccoro28さん
TwitterID: yuucyarisuさん

からの情報を参考にさせて頂きました。
ありがとうございました。