2012年1月10日火曜日

GALAXY Noteでのb-mobileデータ通信SIMのセルスタンバイ問題を解決する

#2013/06/01追記 遥かに簡単な解決方法が出ているので以下記事を参照のこと

国際版GALAXY Note × CM10.1系カスタムROMでセルスタンバイ問題を解決する(Xposedモジュール利用) [GT-N7000]
http://hyzero3.blogspot.jp/2013/06/galaxy-note-cm101romxposed-gt-n7000.html


#適用手順を修正
#framework.jar がdeodex化されている状態でやらないと駄目だとか
#カスタムROM≪Sheep ROM 1.2≫を焼いている場合はそのまま実施して問題なし
#多くのカスタムROMはdeodex化されている

GALAXY Noteに限らないが、Android端末でb-mobile等のMVNO系データ通信SIMを使うと「セルスタンバイ」がバッテリーを大量に食う問題が以前から話題となっていた。
b-mobileでもtalkingSIMではこの問題は起きないらしい。

b-mobile 1GB定額を使う自分にもこの問題は発生しており、頭を悩ませていた。
元々こんな感じ。



約5時間のうち半分くらい使いまくってセルスタンバイが24%。
但し、少しでもバッテリー使用を少なくしようとTaskerで「WiFi時に機内モード利用」という使い方をしていたので、普通に使えば多分30%くらいだっただろう。
この時はブラウザを相当使っていたのでバッテリーの減りが激しい。
Battery+とかも入れてみたりしたので、比率や減り方等は参考程度に。

これにどうやら解決策が見つかったらしい。

ブローヴちゃん: Android + b-mobile データ専用 SIM で電界強度を表示する
http://bl.oov.ch/2012/01/b-mobile-sim.html

緊急通話モード云々とか書かれているが、詳しいことは詳しい人に任せるとして。
/system/framework/framework.jarの中身をどうにかすれば問題が回避出来るとか。
元々この方の持っているGALAXY NEXUS用の手順だが、汎用のパッチ(動作保証なし)を作って下さったようで。

ブローヴちゃん: Android + データ専用 SIM での動作修正パッチ
http://bl.oov.ch/2012/01/android-sim.html

詳しい使い方は後述するとして、このパッチを当ててみた。
右上のアンテナ表示の横にH↓↑が出るようになった(たまに3G↓↑になる)。



比較用に約5時間のうち半分程度使ってみた。セルスタンバイは3%になった。
なんかPhone signalが黄色になっている。
ブラウザ比率が少なかったり常駐アプリが増えていたりするので、こちらも減り方等は参考程度に。

感覚的にはそこそこバッテリーの減りは少なくなっているように思う。
以前から気になっていた部分だけに、解決策が出たのは嬉しい。


さて、パッチの適用方法。要root。

まず念のため全体バックアップ。
ボリュームUPキーとホームキーを押しながら電源キーでCWM-based Recoveryを起動する。

・backup and restore - backup を実行(十数分くらいかかる)

ここから本作業。
・CWM-based Recoveryのまま、PCにUSBケーブルを繋ぐ
#/system/が最初からmountされているはずなので、そのまま以降の作業を進める

・上記リンク先から「bmobile_framework_jar_patcher_20120110.zip」をPCにダウンロードする
#修正版「bmobile_framework_jar_patcher_20120206.zip」が出ており、
#少し手順が変わっている
・ZIPファイルを解凍する


解凍するとこんな感じになる。
実際に使うのはexecute.batのみ。

・PC側でexecute.batを実行する。

コマンドプロンプトが表示されるので、適当なキーを押下する。

必要なファイルが表示される。
ほとんどはパッチフォルダのファイルがそのまま使われるが、Javaはない人がいるかも。
J2RE辺りを入れればいけるはず。多分。
問題なければ適当なキーを押下する。

10を入力してEnterキーを押下する。

yを入力してEnterキーを押下する。

yを入力してEnterキーを押下する。
すると勝手に処理が進んでいく。
数分かかる。

yを入力してEnterを押下する。

バッチファイルの処理はここで終了。
該当のファイルが置き換えられたことになる。
#adb.exeが起動しっぱなしになるようなので、タスクマネージャーなどで強制終了すること

パッチのフォルダ内には以下の2ファイルが出来ている。
framework.jar.orig
framework.jar

framework.jar.origはバックアップなので念のためどこかに保管しておく。
その後、wipe(キャッシュデータ初期化)するためにCWM-based Recoveryを使う。

・wipe cache partition を実行
・advanced - Wipe Dalvik Cache を実行
・reboot system now で再起動

これで適用完了。wipeでキャッシュが消えているため、起動には数分程度かかる。

もし数分経っても起動しないなら失敗している可能性があるため、CWM-based Recoveryを起動した状態でパッチフォルダ内のrecover.batを起動してリカバリ。
これで駄目ならCWM-based Recoveryでバックアップデータをrestore。
#リストアしたことないけど



1 件のコメント:

  1. >#CWM-based Recoveryでsystemマウント状態で端末にadwアクセスする方法が分からなかった

    CWM-based Recoveryは起動した段階で/systemがマウントされてるんで,
    CWM-based Recoveryの画面で,特に何もせずUSBケーブル刺して
    batファイル起動すればOKです.

    マウントするのであれば,
    mounts and storageから/systemをマウント
    (既にマウントしてあるのでunmountしか選べませんけど…)

    返信削除