is01でFroyo(android1.6とデュアルブート)

【2011-09-10追記はじまり】
 
 この記事は古くなっています。yuntan氏が新しいバージョンを公開したので下記ページをご覽ください。
 
cm4is01最新版を入れてみた
http://d.hatena.ne.jp/is01next/20110910
 
【2011-09-10追記おわり】
 
 ついに私のis01にFroyoが来ました。「Windowsでは文鎮化するからLinuxを用意しなければいけない」とか、「boot領域にカスタムROMを焼くので、recovery_kitを入れるなど対策が必要」とか、少し前までは敷居が高すぎて近寄りがたい雰囲気だったのも過去のこと。
 is01だけでFroyo(CyanogenModベース)を入れることができ、しかも文鎮化する可能性は非常に低いデュアルブートが可能になったのです。
 
 思い起こせば、まとめサイトのis01next@wikiを立ち上げたのは昨年11月23日。それから何度か大きな波がやってきては、潮が引くように静かになることを繰り返し、気がつけば他のandroid端末に完全に置いていかれてしまった我がis01。CyanogenModの起動アニメーションを見ることができる日が来るとは実に感慨深い。。
 
 と言うことで、手順をまとめておきます。例のごとく、何があっても泣かない、いわゆる「自己責任」でお願いします。
 

【追記】2011-07-07

 パッチファイルのダウンロード先と手順の内容が食い違っていたので部分的に修正しています。
 

1.以下を熟読する。

 
CyanogenMod for IS01 移植メモ
https://sites.google.com/site/cm4is01wiki/
IS01 に Android1.6 を残しつつ、recovery 領域に CM4IS01を入れた
http://ameblo.jp/puriketsuangel/entry-10938045067.html
【ROM焼き】 au IS01 root5
http://hibari.2ch.net/test/read.cgi/smartphone/1307735687/
is01でcompcacheを有効にしてメモリ不足を解消する方法
http://d.hatena.ne.jp/is01next/20110226
 
DevRenaxさんのtwitter(※「CyanogenMod for IS01」作成者)
http://twitter.com/#!/DevRenax
ゆうじさんのtwitter(※「CyanogenMod for IS01デュアルブート化パッチファイル作成者)
http://twitter.com/#!/_U_G
fi01_IS01さんのtwitter(※サウンドGPU等の各種パッチファイル作成者)
http://twitter.com/#!/fi01_IS01
 

3.以下の2つをダウンロードして解凍

 
CM6byDevRenax-06242011-IS01.7z
http://hotfile.com/dl/121817568/be0784a/CM6byDevRenax-06242011-IS01.7z.html
CM6byDevRenax-06242011-IS01_patch2.7z
http://hotfile.com/dl/122581067/be79e6f/CM6byDevRenax-06242011-IS01_patch2.7z.html
 
CM4IS01本体から以下のファイルを、

  • system.tar

パッチファイルから以下のファイルを、それぞれis01のsdcardにコピー。

  • cm4is01_boot.img
  • system_mod.sh

 

4.is01上で端末エミュレータから操作

  
$ su
# flash_image recovery_wr /sdcard/cm4is01_boot.img
# mkdir /data/cm4is01
# cd /data/cm4is01
# tar xvf /sdcard/system.tar
# sh /sdcard/system_mod.sh
# chmod 6755 /data/cm4is01/system/bin/fix_permissions_mod
# chmod 6755 /data/cm4is01/system/bin/fix_permissions
# ./system/bin/fix_permissions_mod
# mkdir data
# mkdir cache
 
/data/cm4is01/system/build.prop の次の4行のそれぞれ先頭に# を付けてコメントアウト
 
media.stagefright.enable-player=true
media.stagefright.enable-meta=true
media.stagefright.enable-scan=true
media.stagefright.enable-http=true
 
ついでに「ro.sf.lcd_density=240」の数字を変更。
 
CM4IS01(Froyo)起動。初回は時間がかかる。
 
# reboot recovery
 

5.CM4IS01(Froyo)起動後にroot奪取

 
$ su
# fix_permissions
 
 suでrootが取れなかったら、下記アプリを使ってroot奪取可能。
 
z4root 「z4root.1.3.0.apk」
http://forum.xda-developers.com/showthread.php?t=833953
 
wifiが使えなくなった場合は、端末エミュレータで以下のコマンド入力。何度か再起動すれば大丈夫?
 
$ su
# chown root.root /data/cm4is01/system/etc/wifi
# chown root.root /data/cm4is01/system/etc/wifi/wpa_supplicant.conf
 

6.CM4IS01(Froyo)を快適にするために

 
OpenWnnフリック対応(※日本語と英数字の切り替えは SHIFT+スペース。記号や絵文字等の切り替えは ALT+スペース)
http://jp.androlib.com/android.application.com-pm9-flickwnn-jEnE.aspx
AutoKiller Memory Optimizer(※もっさり解消。「Strict(60,70,80)」ぐらいかな?)
http://jp.androlib.com/android.application.com-rs-autokiller-wEwp.aspx
ClockSync(※simなしユーザーには必須)
http://jp.androlib.com/android.application.ru-org-amip-clocksync-Fnmp.aspx
  

7.雑感

 試行錯誤の時期なのですが、取り合えず気づいたことを。
  

  • CyanogenMod設定でcompcacheを有効にするだけではもっさり。AutoKiller Memory Optimizerの併用が◎。
  • 全アプリで画面一杯使える幸せさ。
  • 様々なアプリでマルチタッチ対応。Angry Bird で拡大縮小できるのは有難い。
  • 使えるアプリが増えた! FlashAcrobatなどなど便利です。
  • sl4aでPHPが動いているみたい。他の言語も未確認だけど大丈夫そう。
  • 今のところ起動も早く、とても安定して動いている。

 
【今後使えたら嬉しいアプリ】

 

【追記】2011-07-06

 2.2と1.6のデュアルブートは手軽でいいです。先ほど2.2の方のGoogleアカウントを変更するために、/data/cm4is01/以下を削除した上で、再度2.2をインストールしましたが、これが非常に楽ちん。
 地味に嬉しいのがバッテリー残量がステータスバーに表示されることと、「simを入れろ」だとか「アカウントのパスワードを入力しろ」だとかを再起動のたびに表示されないこと。反対に地味に不便なのが、altキーを使ったキーボードショートカットがほとんど使えないこと。
 

【追記】2011-07-07

 デュアルブート化手順を修正しました。
 現在いろいろなアプリを入れてお楽しみ中。その中で一番感心したのはGoogle Maps。ピンチズームや3Dの回転ができるほか、とにかく落ちなくなった。3Dバリバリのビル街を見ても問題なし。さらに最新のバージョン5.7からの新機能、Labsの地図ダウンロード機能が凄すぎ。指定した地点の16km圏内を簡単にキャッシュしてくれる。オフラインナビとして最強。
 smali/baksmaliを使って、FMトランスミッターのapk取り出しにチャレンジしていますが、プロテクトがかかっているのか、それとも何かが足りないのかうまくいきません。htmlviewerのようなシンプルなシステムアプリも同様にエラーが出ます。どうすればいいのかな。