Galaxy Nexus(SC-04D)に最近流行りの「Xposed」を導入してみました。
Xposedはシステムファイル本体を直接弄ることなく外部から情報をフックして置き換えることでシステム設定を変更する仕組みを提供するものでそれ自体で何かが出来るわけではありませんが、専用に開発されたモジュールを導入することでframework.jarやtelephony-common.jar、framework-res.apkのような重要ファイルの改変を行わずにセルスタンバイ対策やらテザリング開放やらが実現出来たりします。
Xposedを動かすにあたってはroot環境が必須となるためセキュリティ上の都合や端末の制限上rootが取れない場合は従来通り「Galaxy Nexus(SC-04D)用 セルスタンバイ対策ツール(root不要)」を使うなどして直接システムファイルを弄るほかありませんが、root奪取に支障がなければXposedと様々なモジュールを組み合わせることでいとも簡単に自分好みの環境を作ることが出来ます。こちらの方がシステムファイルの書き換えをミスってブートロゴの無限ループに陥ったりする危険が少ないうえ、モジュールを切れば簡単に以前の状態に戻すことが出来るので個人的にもおススメです。
とはいえXposed導入の手順をまとめた情報があまり多くないようなので、Android 4.3(JWR66Y)導入済みのGalaxy Nexus(SC-04D)にセルスタンバイ対策モジュールを導入したケースを例に備忘録を兼ねて手順をまとめておくことにしますが参考にされる場合は自己責任でお願いします。(フォローやサポートは致しかねます)
0. 準備
大切なデータは必ずバックアップをとったうえで、「Galaxy Nexus(SC-04D)を遊び尽くすための準備」を参考にJDK/SDKの導入とCWM Recoveryの準備を整えておいて下さい。
1. root化
xda内のこちらのスレッドより最新のSuperSUのzipファイル「UPDATE-SuperSU-vX.XX.zip」をダウンロードし、Galaxy Nexus(SC-04D)の内蔵ストレージ直下(/sdcard 配下)あたりに保存しておきます。
Galaxy Nexusの電源を一旦落とし、PCとGalaxy NexusがUSBケーブルできちんと接続されていることを確認したらボリュームアップとボリュームダウンの双方を押さえたまま電源ボタンを長押ししてfastbootモードで起動させます。
CWM Recoveryのイメージを置いたフォルダ配下でコマンドが叩けるようコマンドプロンプトを準備します。
【Windows 7, Vistaの場合】
・CWM Recoveryイメージを置いたフォルダを開く
・SHIFT+右クリックで表示されるコンテキストメニューより「コマンドウィンドウをここで開く」選択
【Windows XPの場合】
・[スタート]-[すべてのプログラム]-[アクセサリ]-[コマンド プロンプト]を選択
・cdコマンドでCWM Recoveryイメージを置いたフォルダまで移動する
準備が出来たら「fastboot boot recovery-clockwork-6.0.3.6-maguro.img」でCWM Recoveryを起動させます。
fastboot boot recovery-clockwork-6.0.3.6-maguro.img
CWM Recoveryのファイル名は使用するバージョンに合わせて適宜変更してください。
CWM Recoveryのメニューが表示されたら[install zip]-[choose zip from sdcard]-[0/]-[UPDATE-SuperSU-vX.XX.zip]-[Yes – Install UPDATE-SuperSU-vX.XX.zip]と辿ります。「Install from sdcard complete.」と表示されたら「+++++Go Back+++++」でメニューに戻り「reboot system now」で端末を再起動。
アプリ一覧にSuperSUのアイコンがあることを確認できたらroot化は完了です。
2. Xposedフレームワークとモジュール導入
最初に要となるXposedフレームワークのインストール用apkファイルをxda内のこちらのスレッドより取得しておきます。続けてセルスタンバイ対策用のXposedモジュールをこちらから入手。それぞれGalaxy Nexus(SC-04D)の端末内に保存しておきます。
apk形式で配布されているXposedフレームワークやモジュールのインストールを許可するため[設定]-[アプリケーション]-[提供元不明のアプリ]のチェックがONになっていることを確認。
ESファイルエクスプローラーなどのファイラを開き、さきほど保存しておいたapkファイルのある階層まで移動したら最初にXposedフレームワークをインストールします。ファイラ上のapkファイルをタップして確認画面が表示されたら「インストール」を選択してください。
途中、Googleによるアプリ確認のメッセージが表示されたらとりあえず「同意する」を選んでおきましょう。(あとで変更可能です
続けてセルスタンバイ対策用モジュールをインストール。Xposedフレームワークの時と同様にファイラ上のapkファイルをタップして確認メッセージが表示されたら「インストール」を選択します。
双方のインストールが完了したらアプリ一覧にある「Xposedインストーラ」を起動します。メニューより「フレームワーク」を選択し、遷移先画面にある「インストール/更新」ボタンを押下。
途中、SuperSUによるアクセス認証のダイアログが表示されたら「許可」を選択してください。
メニューに戻り「モジュール」を選択すると先ほどインストールしたセルスタンバイ対策用モジュールがリストに追加されているので左のチェックボックスをONにして端末を再起動させてください。
起動後アンテナピクトが表示されるようになったことを確認できたら作業終了です。
補足:もし問題が発生したら…
Xposedでは直接システムファイルを書き換えるわけではないので、万が一問題が発生してもモジュール一覧から疑わしいものをOFFにするだけでいつでも以前と同じ状態に戻すことが出来ます。しかし、万が一端末の起動に影響が及ぶような問題が生じてしまいブートロゴの無限ループに陥ってしまった場合に備えてXposedを無効化できる「Xposed-Disabler-CWM.zip」というものが用意されています。
Xposedフレームワークをインストールした際に同じ階層にXposed-Disabler-CWM.zipが作成されているはず(…なければXposedフレームワークのインストール用apkファイルを配布してあるxda内のスレッドからも入手可能です)なので、CWM Recoveryから[install zip]するだけで正しく起動できるようになるはずです。
以上