Optimus bright L-07C(v10d) root化とセルスタンバイ問題対策 : JK徒然日記

2012年03月11日

Optimus bright L-07C(v10d) root化とセルスタンバイ問題対策

NTT DoCoMo LG Electronics Optimus bright L-07Cのセルスタンバイ問題ですが、やはりIIJmio SIMを入れて、3Gをいれたままスタンバイモードにしていると電池の減りが半端ないです。

  

■セルスタ対策前の電池の減り具合

スタンバイモード時 : 5%減少/1hあたり
3GでWeb利用時 : 30%減少/1hあたり
(GPSはOFF、輝度は最低、WiFiはOFF)

そこで、なんとかRootを取って、セルスタンバイ問題を解決することに。
せっかくなので、メモを残しておきます。

以下は自己責任でおこなって下さい。うまく行かなくても絶対に私を恨まないで下さい。(w
それにしても、早く、メーカー側が正規対応してくださることを期待しますね。。。。これだけMVNO全盛なんですから。


1.LGドライバをダウンロード&インストール

下記からドライバをダウンロードしてインストールして下さい。(詳細略)

http://www.lg.com/jp/mobile-phones/download-page/L-07C/product-info-driver.jsp



2.ファームウェアを、v10a => v10dへバージョンアップ。

ファームウェアをバージョンアップするためには、LGのツールを利用します。(詳細略)

以下で、LG Mobile Support Toolをダウンロードし利用します。B2CAppSetup.exe を起動します。
http://www.lg.com/uk/support/mc-support/mobile-phone-support.jsp


アップデートすると、最新のファームウェアになるようです。執筆現在ではv10dです。

v10cならば、Superoneclickで、簡単にRootが出来ましたが、v10dになってからは、Superoneclickではエラーとなってしまいます。
そこで、adb shellを利用してRoot化します。

adb shellとは、PCからUSB経由で、Android機をコマンドラインで操作できるシェルプログラムです。
adb shellは、Android SDK(無料)をダウンロードすると、中に含まれています。詳しくは以下で解説します。


3.JAVA Development Kit(JDK)のダウンロード&インストール

Oracle(旧 サン・マイクロシステムズ)のサイトから、JDKをダウンロード、インストールします。(詳細略)
Java Platformを選択し、Platformの選択部分で、Windows x64(64bit)かx86(32bit)を選択しダウンロードします。
すでにJDKがインストールされている場合はこの操作は不要です。

http://www.oracle.com/technetwork/java/javase/downloads/index.html


4.Android SDKのPathを通す

すでにAndroid SDKがインストールされていてPATHを通している場合はこの操作は不要です。

1)Android SDKをダウンロード。
http://developer.android.com/sdk/index.html

2)windows用の「android-sdk_r**-windows.zip」をダウンロードします。**の部分には数字が入ります。私はr16をインストールしました。

3)ダウンロードしたファイルを解凍し、フォルダを「android-sdk」にリネームし、C:\直下に置きます。
(別に、C:\直下で無くても、android-sdkというフォルダ名で無くてもよいのですが、後々わかりやすいので、そうしました。)

4)C:\android-sdk\SDK Manager.exe をダブルクリックして起動します。
最近のAndroid SDKのバージョンでは、adb.exeは、toolsフォルダからplatform-toolsフォルダに移行したので、インストール画面からAndroid SDK Platform-toolsにチェックをして、Installします。

4)Windowsのマイ コンピュータを右クリックし、プロパティ>詳細設定タブ>環境変数をクリックし、システム環境変数からPathを選択し、編集します。変数値の最後の部分に「;C:\android-sdk\tools;C:\android-sdk\platform-tools」と入力し、OKを数回クリックします。注意すべきは、上書きではなく、元々の変数値に追記することです。絶対に元々あった変数値を消さないで下さい。

5)スタートボタン>ファイル名を指定して実行をクリックし、cmdと入力し、OK。コマンドプロンプトが立ち上がります。pathと入力しEnterキーを押すと変数が表示されますので、先程Pathを通したAndroidSDKのパスが表示されていればOKです。


5.AndroidとPCをUSB接続し、v10dのRoot化準備
v10dでは、/data/misc/wifiの脆弱性を利用したRoot化ができなくなっています。
そこで、事前に設定を行います。

1)Android機側で、設定>アプリケーション>開発>USBデバッグにチェックを付けます。また、その下の「スリープモードにしない」にもチェックを付けておくとよいでしょう。

2)USBでPCとAndroid機を接続します。

3)PC側のコマンドプロンプトを再び立ち上げ、adb shellと入力しEnterキーを押します。$が表示され、Android機のShellが操作できるようになります。Android機内では、ADBdと呼ばれるデーモン(Windowsで言うところのサービス)があり、そのデーモン経由で操作を行います。

4)以下のコマンドを入力していきます。コマンドのお作法は基本的にUNIX/Linuxベースです。一部、Android特有のコマンドもあります。半角空白などがありますので注意して下さい。

wifiフォルダに移動します。
$ cd /data/misc/wifi

(もし、上記コマンド実行時に、エラーになる場合は、/data/misc/wifi のパーミッションが777でない可能性があります。
その場合は、以下を参照し、操作後、以下の6に飛んで下さい。)
http://jouji117.seesaa.net/article/262943556.html

wifiフォルダ内にある、configファイルをリネームしておきます。ファイルがない場合はエラーが出ますが問題ありません。
$ mv config config-

シンボリックリンクファイルの作成を行います。
$ ln -s /data/local.prop config

amコマンド(Androidアプリケーションをコマンドラインから起動する)でテザリング設定コンポーネントを起動します。
$ am start -n com.android.settings/.TetherSettings

※ここで、Android機のポータブルWi-Fiアクセス(テザリング)の画面が表示されますので、ポータブルWi-Fiアクセスのチェックを入れます。また、もともと入ってる場合は入れなおします。

local.propのパーミッションを確認します。
$ ls -l /data/local.prop
-rw-rw-rw- system   system        249 2012-03-11 01:40 local.prop

configファイルを削除します。
$ rm config

リネームしていたconfig- を、元の名前に戻します。ファイルがない場合はエラーが出るけど無視します。
$ mv config- config

local.propに、qemu=1を設定します。これでadb接続で、特権を取ることができます。
$ echo ro.kernel.qemu=1 > /data/local.prop

adb shellを抜けます。

$ exit

DOSプロンプトに戻ります。以下のように、adbで再起動します。
>adb reboot


もういちどadbでつなぎます。
>adb shell

すると、プロンプト表示が$ではなく、#(特権)になります。

(次回にadb shellで接続する際は、>su とすると、#でSuperUserとして操作できます。)

6.SuperoneclickでRoot化

1)まず、PC側のウイルスチェックソフトを無効化しておきます。私の場合、MS Security Essentialsを利用しているので、そのサービスを落とします。サービス確認とシャットダウンには、私はフリーソフトウェアの「procexp」を利用しています。(詳細略)

2)Superoneclickをダウンロードして解凍します。ダウンロードはかなり遅い感じです。
http://depositfiles.com/files/n0dcxce3t

3)Superoneclick動作には、.NET framework 2.0以上のインストールも必要なためあわせてインストールしておきます。すでにインストールされている場合はこの操作は不要です。(詳細略)

4)Android機側の、設定>アプリケーション>開発>USBデバッグにチェックを付けます。また、その下の「スリープモードにしない」にもチェックを付けておくとよいでしょう。

5)USBでPCとAndroid機を接続します。

6)PC側で解凍したフォルダ内の、SuperOneClick.exeを起動します。

※以下はSuperoneclickの操作になります。

7)Advancedタブの「Use Alternate ADB Parser」にチェックを付けます。

8)Generalタブをクリックし、Rootボタンを押してルート化します。

9)busyboxが無いとエラーが出る場合がありますが、構わずインストールを続けます。

10)ルート化成功のメッセージボックスがポップアップで出ます。これで、Root化できました。

11)PCのコマンドプロンプトを再び起動し、adb shellを起動します。

>adb shell

上記でいじった、 /data/local.propを空にすることで、ro.kernel.qemu=1を消去します。
# echo > /data/local.prop


7.ESファイルエクスプローラーをAndroid機側にインストール
Androidマーケット(Google Play)から、ESファイルエクスプローラーをダウンロードして、Android機にインストールします。現在のところ無料です。


8.framework.odexの差し替え

1)framework.odexのダウンロード(v10d用)
管理者様は、adb shellや一発転送バッチも同梱してくださっているようです。ただしodex.batを実行しても私の環境ではなぜかうまく行きませんでしたので、以下の手順で手動でodexファイルをコピーします。
http://blog.ds074704261.com/archives/273

2)PC側で、解凍したファイルのdataフォルダ内にあるframework-v10d.odexを、framework.odex.newにリネームして、Android機のSDカード直下にUSB経由でコピーします。

※ 以下は、特記無い限り、Android機側のESファイルエクスプローラー上での操作です。

3)ESファイルエクスプローラーの設定で、Rootエクスプローラーとファイルシステムをマウントにチェックを付けます。Rootが取れていないとこの操作はできません。

4)SDカード直下にある、framework.odex.newを選択してコピー。

5)ESファイルエクスプローラーの、左上の「お気に入り」から、携帯>system>frameworkに移動し、貼付け。

6)framework.odex.newを選択し、ファイルプロパティのパーミッションを、
rw- rw- rw- から rw- r-- r--に変更します。

7)元々存在しているframework.odexを、framework.odex.oldにリネームします。

8)framework.odex.newを選択し、framework.odexにリネームします。(リネームせずに上書きすると、文鎮化するので注意!)

9)ESファイルエクスプローラーを終了し、L-07Cを再起動します。

10)NTT DOCOMOの文字と、3G↑↓のピクトが立っていれOKです!
再起動すると、(通信サービスなし)|NTT DOCOMO と表示されます。
前の「(通信サービスなし)」は、"音声通話無し"の意味、後ろの「NTT DOCOMO」は"データ通信"のキャリア情報です。

通常の本家DoCoMoの音声SIMを挿すと、NTT DOCOMO | NTT DOCOMOと表示されるのはこの理由からです。


9.ファクトリーセットアップ(ファクトリーリセット)を行う。

このままでは、なぜか、ディスプレイが常時点灯状態になってしまいます。(私も正直焦りましたよ。)
そこで、ファクトリーセットアップを行い、初期化します。

設定>プライバシー>初期化 でデータを初期化します。初期化前に消えてまずいものは、クラウドサービスなどに退避しておいて下さい。
すべて初期化されてしまうので、APN設定、WiFi設定、メール設定、アプリ再インストールなどを行います。
(たぶんこれをしなくても/data/フォルダを消すだけで行けそうなのですが、私は念のため初期化しました。)

これで、L-07C(v10d)のセルスタンバイ対策はOKです!!お疲れ様でした。

あ、そうそう。普段利用される場合は、設定>アプリケーション>開発>USBデバッグのチェックは外して、その下の「スリープモードにしない」にもチェックを外しておいた方がよいかも。


■セルスタンバイ対策後の効果

その後、電池の減り具合ですが、

スタンバイモード時 : 1%減少/1hあたり(対策前は5%減少)
3GでWeb利用時 : 20%減少/1hあたり(対策前は30%減少)
(GPSはOFF、輝度は最低、WiFiはOFF)

一応、効果はあったようです(^^)

後、副産物として、ネットワークでの位置情報捕捉がほとんどダメだったIIJmioですが、このセルスタ対策後にはなぜか位置捕捉がある程度されるようになりました。Google Mapsなどで、ナビもできますよ〜。(GPSでの捕捉改善は後日)

■この対策とプラスして効果ありだったもの

こうやって、セルスタンバイ対策をしたのですが、やはりヘビィーに使うと1日と持ちません。
2〜3日出張で家出る私としては、なかなか困ったものです。

よく充電を兼ねて緊急で利用するのが、
・マクドナルド(よくJALの搭乗券裏面の無料チケットを利用します ^^;)
・JALラウンジ(充電コーナーがあります)
・新幹線のぞみの窓側、または最前列(充電できるコンセントがあります)

しかし、なかなかマクドナルドに入る時間も無いのがつらいところ。
そこで、とうとう買っちゃいました。Panasonicの充電器です。汚れの目立たない黒にしました。
ノーブランドの安いものも売られていますが、私は信頼のパナにしました。値段もひところの1万円・・・の頃よりはだいぶ下がって来ましたね。

「Panasonic Qi対応(無接点充電対応) USBモバイル電源パック リチウムイオン 8,100mAh 黒 QE-PL301-K 」

これを買ってからというもの、充電に困るという心配はなくなりました。
急な調べ物、グルメや客先への行き先に困ったりとか、そういう時に限って、充電が無くなっていた・・・なんてこともありません。
これは重宝しますよ。3回充電できます。



あと、出張はあまりなくて、あっても1泊程度。だとすると、荷物は軽いにこしたことはありません。
その場合はより軽量なものがよいかもです。





なにはともあれ、楽しいスマートフォンライフを送ってくださいね!










  



 
 

posted by jouji117 at 00:41| 香川 ☁| Comment(9) | スマートフォン | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
/data/misc/wifiフォルダーの権限がありません。
chmodのやり方がわかりません。
ご存じでしたら教えてください。
Posted by いたぽん at 2012年03月19日 00:00
はじめまして。
L-07C v10dでのroot化を探していてたどり着きました。

最初の作業(local.propのパーミッション確認)まででつまずいています…

以下のような結果になっていますが、どこが駄目なのかわからない状況です。ご教示頂けませんか?

$ cd /data/misc/wifi
cd /data/misc/wifi
cd: can't cd to /data/misc/wifi
$ mv config config-
mv config config-
failed on 'config' - Permission denied
$ ln -s /data/local.prop config
ln -s /data/local.prop config
link failed File exists
$ am start -n com.android.settings/.TetherSettings
am start -n com.android.settings/.TetherSettings
Starting: Intent { cmp=com.android.settings/.TetherSettings }
Warning: Activity not started, its current task has been brought to the front
$ ls -l /data/local.prop
ls -l /data/local.prop
/data/local.prop: No such file or directory
$
Posted by とおる at 2012年04月01日 14:46
いたぽんさん、とおるさん、こんばんは。

仕事が忙しくてレスが遅れました。 おそらく、 /data/misc/wifiのパーミッションが777で無いため(CDコマンドが許されていないため)、うまく行かない可能性があります。

http://jouji117.seesaa.net/article/262943556.html
Posted by JK at 2012年04月07日 21:59
こちらの記事をもとに自分もセルスタンバイ問題を解消できました。とても参考にさせていただきました。
Posted by じろりあん at 2012年04月08日 16:19
このサイトを参考にさせて頂いてroot化に
挑戦していますが、superoneclickが途中で
止まってしまいます。

V10Dでパーミッション777の対策後にやって
いますがShell rooting device step#7で
必ず止まってしまいます。
Posted by たんぱん at 2012年04月26日 10:09
PCを替えたりいろいろ試して見ましたが

$ echo ro.kernel.qemu=1 > /data/local.prop

のことろで
cannot create /data/local.prop: permission denied
と出てしまいます。
書いてある通りにしているはずですがどこか間違っているのでしょうか?
Posted by たんぱん at 2012年04月27日 15:59
たんぱんさん、こんばんは。
うーん、私も色々やってみましたが、ややお手上げです。

10D=>10Cに戻す方法があるようですので、それで試してみるしかないかも・・・。

お役に立てずすみません。この機種って個体差があるんですかね?
Posted by JK at 2012年04月30日 22:51
ありがとうございます!

初心者でしたが、しっかりできました!

本当にありがとうございます!
Posted by ゆうさん at 2012年08月25日 22:12
素人ですが、このページに書かれている通りに進めたらできました。
詳しく書いていただき、ありがとうございました。
Posted by aparapa at 2012年09月04日 10:00
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。