IS03にICSを導入する

今更ながらバイナリと導入方法を公開しようと思います。
殆どの機能が動作しないため、入れても全然遊べませんが一応。

これは私が2012/04/08にUPした動画です。
多分こんな感じで動くと思います。

多分というのは、この時に使っていたソースやらバイナリやらを上書き編集しながら
改良していった結果、壊れて動作しなくなり暫く放置していたのを、急遽ビルドしなおしたためです。。

●動作するもの

  • 画面
  • タッチパネル
  • SDカード
  • GPU(読み込みますが、正常に動作しているかは不明)

●動作しないもの

  • 3G/WiFi
  • Bluetooth
  • GPS
  • 各種センサ
  • メモリ液晶(表示されないだけで、押せば反応します)
  • オーディオ
  • カメラ
  • LED
  • バイブレーション
  • ガラケー機能

..など殆どの機能

動画では標準のホームが起動しないと書いていましたが、現在は起動するようです。
また、センサが動作しないためか画面が横向きで固定になってしまうため、ソースを変更して
強制的に縦表示するように変更してあります。
また、USBデバッグ(adb)は開発者オプションのチェックの有無にかかわらず常時有効ですが、
USBケーブルを接続した状態で電源を入れないと反応せず、途中でケーブルを抜くと
再起動するまで反応しません(私の環境の場合)

とりあえず入れてみたい、という人のために導入方法を公開します。
公開するICSは、IS03のbootパーティションにMarijuanaさんのOCカーネルに同梱されている
CWM(リカバリイメージ)が焼かれているのを前提としています。

http://marijuana.ddo.jp/is01/index.php?moddir=downloads&action=single&lid=46&cid=6

IS03は他のAndroid端末と異なり、簡単に文鎮化しますので、
良く分からない人は導入をやめてください。
すべて自己責任でお願いします。データが壊れたり、端末が壊れたりしても私は一切責任を負いません。 

また、端末のsystemをマウントするため、OTAが当てられなくなる等のリスクも発生します。
(IS03はsystemをマウントしてしまうと中身を編集していなくてもOTAが当てられなくなるようです)
回避方法はOCカーネル内のReadmeに書いてある通りにバックアップを取れば良いと思います。(未確認) 

本当に分かる人のみ向けです。

上記で紹介したCWMをbootパーティションに導入しておけば、電源ON後

  • 10秒間放置で通常BOOT(Froyo)
  • シャッターボタンを押せばCWM起動
  • (CWM等から)リカバリで再起動すればICS起動

となるので便利で、CWMにより完全に文鎮化するリスクが軽減できます。
CWM未導入のままbootパーティションで起動できなくなると文鎮化します。

導入には/dataに約305MB以上の空き容量が必要です!

1. まずは以下のファイルをダウンロードしてください。

●IS03用ICS
is03ics_20120910.zip

●gapps_ics_4.0.3_v11.zip(ググって探してください)

●Adreno200-AU_LINUX_ANDROID_ICS_CHOCO_CS.zip
https://developer.qualcomm.com/mobile-development/mobile-technologies/gaming-graphics-optimization-adreno/tools-and-resources
の、Adreno 2xx User-mode Android ICS Graphics Driver (ARMv7)からダウンロードできます(要ユーザー登録)

Adreno200-AU_LINUX_ANDROID_ICS_CHOCO_CS.zipのダウンロードが完了したら、一度それを解凍します。
すると、systemというフォルダが生成されるので、それをZIPで圧縮します。
生成したZIPファイルの名前を、Adreno200-AU_LINUX_ANDROID_ICS_CHOCO_CS.zipとしてください。
この操作を行わないと、Android内でGPUドライバの解凍に失敗します。

2. CWMを起動します。
起動したら、/dataと/sdcardをマウントしてください。
次に、ダウンロードしたZIP内にあるファイルとgapps、GPUドライバを転送します。

adb push system.ext4.gz /sdcard
adb push ubi.img /sdcard
adb push gapps_ics_4.0.3_v10.zip /sdcard
adb push Adreno200-AU_LINUX_ANDROID_ICS_CHOCO_CS.zip /sdcard

次に、ADBでシェルに入り、以下のコマンドを実行します。

$ su
# mkdir /data/guest
# mkdir /data/guest/data
# mkdir /data/guest/cache
# mkdir /data/guest/adreno
# mkdir /data/guest/gapps
# busybox gunzip -c /sdcard/system.ext4.gz > /data/guest/system.ext4
# busybox unzip /sdcard/Adreno200-AU_LINUX_ANDROID_ICS_CHOCO_CS.zip -d /data/guest/adreno
# busybox unzip /sdcard/gapps_ics_4.0.3_v11.zip -d /data/guest/gapps
# busybox rm -rf /data/guest/gapps/vendor/*
# flash_image recovery /sdcard/ubi.img
# exit
$ exit

これで導入は完了です。
以後はrecoveryパーティションから起動すると、ICSで起動できるようになります。
CWMからリカバリで再起動するには、
advanced -> Reboot Recovery
もしくはadbを用いる場合、Android(CWMでもOK)が起動している状態で、

adb reboot recovery

でOKです!

初回起動には時間がかかります。
androidロゴで停止したように見えますが、暫く待つとセットアップウィザードが起動します。
また、セットアップウィザードで画面がフリーズした場合、画面を一旦消して、再度つけると
元に戻る場合があります。

最後にもう一度言いますが、
何も動かないので、とりあえずICSが動く、というだけのものです。
上述の説明を読んで良く分からない人は導入を見送ってください。

また、このICSはIS01用のICS/JBを開発してくださっている@karma1501さんのパッチを
ほぼそのまま使いました。ありがとうございます!

導入はくれぐれも自己責任でお願いします!

[`evernote` not found]

    • 匿名
    • 2012年 9月 22日 7:17pm

    # busybox gunzip -c /sdcard/system.ext4.gz > /data/guest/system.ext4のコマンドを打つと#が解除されます…何故でしょうか><

      • tako0910
      • 2012年 9月 22日 10:04pm

      なぜですかね…
      その際、何もエラー等は表示されませんか?
      #が解除されるとは、$になってしまうということですか?
      それとも、adb(shell)の接続が切れてしまうのですか..?
      私の経験上、USBケーブル不良だとそういった現象が起きることがあります…

      #が解除されてしまっても、正常に転送できていれば問題ないので
      suしてrootになってから8行目以降を行なってもらえれば問題無いと思います。

      正常に転送できているかどうかは、転送したファイルのMD5値を見れば分かると思います。
      dataパーティションをマウントしている状態で、root権限になってから、
      # md5sum /data/guest/system.ext4

      出力値が
      4ec2b80730046ea199f5ef529b83c024
      であればファイルの展開に成功しているので、8行目から続きの作業を行なってください。
      別の値が表示される場合や、No such file or directoryと表示される場合は、展開に失敗しています。
      可能であれば、SDカードを交換したり、USBケーブルを交換してみたりして、再度行なってみてください。

        • 匿名
        • 2012年 9月 23日 2:40am

        返信遅れてすみません…
        MD5値が一致せず、原因を探していたら/data領域が足りてないという、初歩的なミスでした。。
        自分の注意不足で騒がせてすみませんでしたm(_ _)m

    • いなろく
    • 2013年 10月 22日 7:52pm

    リカバリー(cwm)はどうやって焼けば良いでしょうか?
    リカバリーイメージは
    http://marijuana.ddo.jp/index.php?moddir=downloads&action=viewcat&cid=17
    の一番下のis03ocboot.7zを使っています

      • tako0910
      • 2013年 10月 25日 2:26am

      ググってみてください。
      (僕が詳細な方法をもう忘れてしまいました。)

      flash_imageで焼くのだったと思います。

        • いなろく
        • 2013年 10月 25日 11:55pm

        flash_imageの場所のパス imgのパス
        で出来ましたO(≧▽≦)O
        あと….φ(・ω・` )
        # busybox unzip /sdcard/Adreno200-AU_LINUX_ANDROID_ICS_CHOCO_CS.zip -d /data/guest/adreno
        は中のsystemフォルダを/adrenoフォルダにじかにコピーしても大丈夫ですか?

          • tako0910
          • 2013年 10月 27日 2:54am

          はい、Zipファイルの中のsystemフォルダが
          /data/guest/adreno内に入っていれば問題ないはずです。

  1. 起動まではできたのですが、起動したら「問題が発生したためシステムUIを終了します。」と連発しました。どうすればいいでしょうか?

  1. トラックバックはまだありません。