スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

L-01DでCyanogenMod 10.1 ( Android 4.2 Jelly Bean ) を導入する

有志の方々に感謝です。
入手するファイル

cm-10.1.3-p930.zip
・・・cyanogenmod のサイト から
・・・https://download.cyanogenmod.org/?device=p930 の stable から

kernel.zip
・・・xdaのL-01D kernel の記事から
・・・http://forum.xda-developers.com/showthread.php?s=092fb8e0f1d8cdba6336c01060ba430c&t=2178773&page=2

gapps-jb-20130301-signed.zip
・・・goo.im から
・・・https://goo.im/gapps/

これらをSDカードに入れてリカバリーモード(CWM)に入って、以下の順でインストールする

1) wipe data/Factory reset
2) install zip で以下のファイルを選択してインストールする
[1] cm-10.1.3-p930.zip
[2] kernel.zip
[3] gapps-jb-20130301-signed.zip

再起動すると使えるようになります。

課題)
・WIFIのみで使っているためか、電源を入れなおすと日付が1970年に戻る

このROMでのメリット)
・ベースバンドバージョンが正しく表示された
・アプリ Camera Zoom FXが動作するようになった
・ネットワークモードでLTEあり、なしが選択できる

また、Cyanogenmodを入れることでオリジナルICSより
・空きRAM容量が増加した
・さくさく感になった
と、使い勝手はよいです。無くなってしまう機能が
・ワンセグ(xdaの記事を読むとカーネルは対応しているらしい)
・おサイフケータイ(felica)
でしょうか。バッテリの消費が激しいのが気になります。

まだ使い始めたばかりなので安定性がどのくらいかわかりませんが安定しているようならこのままおいておくつもりです。

device-2014-09-11-185248.png

CWM(ClockworkMod Recovery)の導入

※一時でも恒久化でもrootになることができれば、CWMを入れることができる。

用意するもの
mmcblk0p7.img
... v10cやv10bから/dev/mmcblk0p7からddで吸い出したファイル。 ググってみつけておく

recovery-clockwork-touch-6.0.4.5-p930.img
... https://www.clockworkmod.com/rommanagerからダウンロードする。
LG Nitro HD / LG P930 (AT&T)用を選択する(touch用が使いやすい)

- sdカードへ転送
C:\TMP> adb push mmcblk0p7.img /mnt/sdcard/
C:\TMP> adb push recovery-clockwork-touch-6.0.4.5-p930.img /mnt/sdcard/

- SDへオリジナルをバックアップ
C:\TMP> adb shell
shell@android:/ $ su
shell@android:/ # dd if=/dev/block/mmcblk0p7 of=/mnt/sdcard/org-mmcblk0p7.img
shell@android:/ # dd if=/dev/block/mmcblk0p13 of=/mnt/sdcard/org-mmcblk0p13.img

- ROMエリアへ書き込み
- ブートローダエリアの書き換え
shell@android:/ # dd if=/mnt/sdcard/mmcblk0p7.img of=/dev/block/mmcblk0p7
10240+0 records in
10240+0 records out
5242880 bytes transferred in 1.941 secs (2701123 bytes/sec)

- recoveryエリアの書き換え
shell@android:/ # dd if=/mnt/sdcard/recovery-clockwork-touch-6.0.4.5-p930.img of=/dev/block/mmcblk0p13
15888+0 records in
15888+0 records out
8124416 bytes transferred in 2.668 secs (3043598 bytes/sec)

shell@android:/ # exit
shell@android:/ $ exit

- 再起動
C:\TMP> adb reboot

- 無事androdiが起動できていることを確認できたら、リカバリーモードに入ってみる

C:\TMP> adb reboot recovery

キー操作は、音量上と下で選択行の移動(なぜか上→カーソル下と逆転しているになっている)、電源ボタンで選択

CWMが動いたら、今のファームウェアのバックアップをとっておく。
これでCyanogenModも入れることができる。

L-01Dのroot化メモ for ROMバージョン V20e

入手したL-01Dは、V20eというICS最終版のファームウェアバージョンになっていた。

ネットで調べるとroot化の手順がV20cやV20dと異なるらしい。
調べて成功した手順をメモしておく

2chをはじめ、取り組まれた多くの方々へ感謝します。

【一時root化】

用意するファイル(L-01D、rootでググって取得しておくファイル)

install_backdoor
disable_ccsecurity
run_root_shell
device.db
backdoor_mmap.sh
busybox
su
Superuser.apk

C:\TMP に install_backdoor ~ backdoor_mmap.sh をおく
C:\TMP\FILES に busybox, su, Superuser.apk をおく

コマンドプロンプトを起動する

- 準備
C:\TMP> adb push install_backdoor /data/local/tmp
C:\TMP> adb shell chmod 755 /data/local/tmp/install_backdoor
C:\TMP> adb push disable_ccsecurity /data/local/tmp
C:\TMP> adb shell chmod 755 /data/local/tmp/disable_ccsecurity
C:\TMP> adb push run_root_shell /data/local/tmp
C:\TMP> adb shell chmod 755 /data/local/tmp/run_root_shell
C:\TMP> adb push device.db /data/local/tmp
C:\TMP> adb shell chmod 644 /data/local/tmp/device.db

C:\TMP> adb push files\busybox /data/local/tmp
C:\TMP> adb shell chmod 755 /data/local/tmp/busybox
C:\TMP> adb push files\su /data/local/tmp/su
C:\TMP> adb push files\Superuser.apk /data/local/tmp/Superuser.apk

- root権限取得
C:\TMP> adb shell /data/local/tmp/install_backdoor
Attempt acdb exploit...
failed to open /dev/msm_acdb due to Permission denied.
Attempt put_user exploit...
install_mmap: success

- successのメッセージが出ればOK

- LSM解除
C:\TMP> adb shell /data/local/tmp/disable_ccsecurity

- 一時root取得
C:\TMP> adb shell

shell@android:/ $ /data/local/tmp/run_root_shell

- 以下のようにプロンプトがルートになる。

shell@Android#

- ルートで以下のコマンドを入力
shell@Android# mount -o rw,remount /system
shell@Android# /data/local/tmp/busybox cp /data/local/tmp/busybox /system/xbin/
shell@Android# /data/local/tmp/busybox chmod +x /system/xbin/busybox
shell@Android# busybox cp /data/local/tmp/Superuser.apk /system/app/
shell@Android# busybox cp /data/local/tmp/su /system/xbin/
shell@Android# busybox chown 0:0 /system/xbin/su
shell@Android# busybox chmod 6755 /system/xbin/su
shell@Android# mount -o ro,remount /system
shell@Android# exit
shell@android/ $

- 念のために確認する

shell@android:/ $ ls -l /system/xbin/busybox
ls -l /system/xbin/busybox
-rwxr-xr-x root root 1867568 2014-09-10 18:36 busybox
shell@android:/ $ ls -l /system/xbin/su
ls -l /system/xbin/su
-rwsr-sr-x root root 22364 2014-09-10 18:37 su
shell@android:/ $ ls -l /system/app/Superuser.apk
ls -l /system/app/Superuser.apk
-rw-rw-rw- root root 843503 2014-09-10 18:37 Superuser.apk
shell@android:/ $

- adb shell を抜ける
shell@android:/ $ exit

- 後始末-バックドア無効化
C:\TMP> adb shell /data/local/tmp/install_backdoor -u

- リブート
C:\TMP> adb reboot

これで、いつでもルートになれる環境ができた。


【恒久root化】

しかし、起動時からルート化するには以下の3つのコマンドを起動中に実行しておく必要がある。

/data/local/tmp/install_backdoor
/data/local/tmp/disable_ccsecurity
/data/local/tmp/install_backdoor -u

そのため、
起動時に実行される/system/etc/install-recovery.shを利用して
上記のコマンドを連続して実行するように作る。

C:\TMP> adb push backdoor_mmap.sh /data/local/tmp
C:\TMP> adb shell

shell@android:/data/local/tmp $ cd /data/local/tmp
shell@android:/data/local/tmp $ ./install_backdoor

Attempt acdb exploit...
failed to open /dev/msm_acdb due to Permission denied.
Attempt put_user exploit...
install_mmap: success

shell@android:/data/local/tmp $ ./disable_ccsecurity
shell@android:/data/local/tmp $ ./run_root_shell

- 一時ルートになるので以下の操作でinstall-recovery.shをインストールする
shell@android:/data/local/tmp # mount -o rw,remount /system
shell@android:/data/local/tmp # cd /system/etc/
shell@android:/data/local/tmp # ln -s /data/local/tmp/backdoor_mmap.sh install-recovery.sh
shell@android:/data/local/tmp # chmod 755 install-recovery.sh
shell@android:/data/local/tmp # cd /data/local/tmp
shell@android:/data/local/tmp # mount -o ro,remount /system
shell@android:/data/local/tmp # ./install_backdoor -u
shell@android:/data/local/tmp # exit
shell@android:/data/local/tmp $ exit

- 再起動する
adb reboot

これで完成。以下のようにsu のみでプロンプトがルートに変われば成功。

C:\TMP> adb shell
shell@android:/ $ su
shell@android:/ #

SC-02Bにandroid 4.4 カスタムROM C-Rom V3 を入れてみた。

http://forum.xda-developers.com/showthread.php?t=1925195 にC-RoMのandroid4.4リリース記事が出ていたので入れてみました。

【ダウンロードするファイルとサイト】
カスタムROMのzipは以下からダウンロードします。
http://get.c-rom.org/
C-RoM-KK-v3.0-20140223-0238-galaxysmtd.zip

gappsのzipは以下にいろんなバージョンがあるのですが最小構成のMicroバージョンを選択してみます。
http://goo.im/devs/paranoidandroid/roms/gapps-micro
pa_gapps-modular-micro-4.4.2-20140213-signed.zip

SC-02B用のKitKatカーネルは以下からダウンロードします。
http://goo.im/devs/didhiy/sc-02b_cm-11.0
notest-kk44-sc02b-20140214-twrp.zip

MODEMとRIL/GPSは、以下からダウンロードします。
http://goo.im/devs/didhiy/sc-02b_cm-10.1
sc02b-OMLL1-modem.zip
sc02b-OMLL1-ril-gps-blobs.zip

【インストール手順】
以下の順番でリカバリーモードに入ってインストールします。

①C-RoM-KK-v3.0-20140223-0238-galaxysmtd.zip
②notest-kk44-sc02b-20140214-twrp.zip
③sc02b-OMLL1-modem.zip
④sc02b-OMLL1-ril-gps-blobs.zip
⑤pa_gapps-modular-micro-4.4.2-20140213-signed.zip

インストールする前にdata/cacheのwipeを実行しておきます。


android 4.2の頃は、動作にカクカク感があったのですが、4.4では使えるRAM容量が増えたのでスムーズに動きます。
またC-RoMではホームアプリを「設定」の中から簡単に選べるようになっています。これは「Google Now ランチャー」です。他に「Launcher 3」が選べます。
C-ROM-1.png

C-RoMではファイルマネージャが最初から入っているので、SDにバックアップしていたアプリを通信せずにインストールできます。
C-ROM-2.png

また、アプリ「ヘッドセット」が入っています。MP3プレーヤとして使う時、エフェクトを色々変えることができます。
C-ROM-ヘッドセット1

C-ROM-ヘッドセット2

UIもカスタマイズ出来ます。例えばバッテリをパーセント表示、充電中は黄色に表示する等が出来ます。
C-Rom-Custom4.png

CPUのクロックアップもできます。最高1300MHzまで上げることが出来ます。
C-ROM-Custom2.png

バージョン表示はこんな感じです。メモリが417MBと過去のバージョンより増えています。また、ベースバンドがSC02BOMLL1と表示されているので3G通信もできます。(たまに不明に戻りますが・・・)
C-ROM-Version1.png

欠点ですが、海外版GalaxySにはフロントカメラがあるのですがSC-02Bにはありません。そのため「カメラ」でフロントカメラを選んでしまうと異常終了して二度と立ちあがりません。
CM11-Camera2.png

その時は、アプリ情報から「カメラ」を選んで
CM11-Camera3.png

「データを消去」しましょう。これで直ります。SC-02Bで海外版使う場合の宿命ですね。
CM11-Camera4.png






SC-02B用 android 4.4 (KitKat) カーネルをビルドする

自分用の覚書です。didhiyさんのソースを利用してビルドします。2013/03/19 GPS対応するため修正。

必要なもの

①開発マシン:Ubuntu 12.04 (x86)
カーネルをビルドするだけなので、32bit版 Linux でOK

②クロスコンパイラ: gcc-eabi-4.8 (カーネルのMakefileに4.8と記述されている))
ダウンロード先:https://releases.linaro.org/latest/components/toolchain/binaries/
ダウンロードファイル:gcc-linaro-armeb-linux-gnueabihf-4.8-2014.01_linux.tar.bz2

③カーネルソース:didhiyさんはブランチが沢山ある、要注意
ダウンロード先:https://github.com/didhiy/android_kernel_samsung_aries/tree/kk-notest
ダウンロードファイル:android_kernel_samsung_aries-kk-notest.zip

④cm11のramdisk-disk
ダウンロード先:https://github.com/didhiy/ramdisk-aries
ダウンロードファイル:ramdisk-aries-aries-cm-11.0.zip

⑤ビルドに必要なディレクトリ
ダウンロード先:https://github.com/didhiy/ramdisk-sc02b
ダウンロードファイル:ramdisk-sc02b-master.zip

⑥mkbootfsとmkboot.imgのバイナリ
ダウンロード先:http://forum.xda-developers.com/showthread.php?t=562318
ダウンロードファイル:mkboot.zip

ディレクトリ構造)

ビルドシェルスクリプト:build-sc02b.sh
このスクリプトをみると、以下の記述がある。

KERNEL_DIR=`pwd`
OUTPUT_DIR=../output
CWM_DIR=../ramdisk-sc02b/stock/
MODULES_DIR=../ramdisk-sc02b/stock/system/lib/modules/


落とした各種zipファイルは、解凍し以下のフォルダ名にしておく。

解凍後にmvコマンドでディレクトリ名を変更しておく
# mv ramdisk-sc02b-master ramdisk-sc02b

また、インストール用zipでの必要なフォルダも作っておく
# mkdir /home/sc02/ramdisk-sc02b/stock/system
# mkdir /home/sc02/ramdisk-sc02b/stock/system/lib
# mkdir /home/sc02/ramdisk-sc02b/stock/system/lib/modules

mkbootfs と mkbootimg は /home/sc02b/bin におく、PATH通しておく

ビルド手順

★コンパイルの設定
# export PATH=/home/sc02b/gcc-linaro-armeb-linux-gnueabihf-4.8-2014.01_linux/bin:/home/sc02b/bin:$PATH
# export PATH=/home/sc02b/ramdisk-aries-aries-cm-11.0/bin:$PATH
# export ARCH=arm
# export CROSS_COMPILE=/home/sc02b/gcc-linaro-armeb-linux-gnueabihf-4.8-2014.01_linux/bin/armeb-linux-gnueabihf-

★Makefileの修正
# cd /home/sc02/android_kernel_samsung_aries-kk-notes
# cp Makefile Makefile.org
# emacs Makefile

★まずは、RAMDISKのfstab.ariesの修正
最初から入っている ramdisk.img を解凍して、中身を修正する。

# mkdir work
# cp android_kernel_samsung_aries-kk-notest/source/usr/galaxysmtd_initramfs_files/ramdisk.img work

WORKディレクトリで解凍して、作りかえる
# cd work
# minigzip -d < ramdisk.img > ramdisk.cpio
# mkdir ramdisk
# cd ramdisk
# cpio -idv < ../ramdisk.cpio

# cp fstab.aries fstab.aries.org …オリジナルのバックアップ
# emacs fstab.aries … mmcの箇所を逆にする

★mmcの2行で2と0をひっくり返しておく

# cd ..
# mkdir org
# mv ramdisk.img ramdisk.cpio org … オリジナルのバックアップ
# mkbootfs ramdisk > ramdisk.cpio
# minigzip < ramdisk.cpio > ramdisk.img

修正を加えたramdisk.img を元のディレクトリへ戻す
# mv ramdisk.img ../android_kernel_samsung_aries-kk-notest/source/usr/galaxysmtd_initramfs_files/

★ビルド実行

2,3時間すると、リカバリモードでインストールできるzipファイルが出来る

上記のように、notest-kk44-sc02b-20140319-twrp.zip というようにビルド日でzipが作られる。

なお、zipの中のupdater-scriptには機種判定用のasert()が入っているから削除した方がよい。

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。