NEXUSデバイスをSDK、adb sideloadを利用して最新ビルドのAndroidOSに手動で強制的にアップデートする方法

Androidロゴ

Androidロゴ


ここでは、ブートローダーをアンロックすることなく、最新版のビルドやAndroidOS自体のアップデートがあった場合、OTAを待たずに自分でデータを保持したまま最新版に強制アップデートする正当な手段を提供します。
root取ったりOEMアンロックはしないので、データの消去はおきません。

まずは簡単な目次です。

1.Java JDKのインストール(開発者向け版)
2.Android SDK toolsのダウンロード
3.JavaとSDKのパスを通す
4.SDK Managerを起動し、platform-toolsを取得する
5.NEXUSデバイスのUSBドライバ最新版を導入する
6.USBで接続し、差分OTAファイルをコマンドプロンプトを使って端末に送る
7.送信成功確認と起動後のビルド番号のチェック
8.おわりに

それでは、やり方を順番を追ってご説明します。

1:Java SDKのダウンロードとインストール
Javaのランタイムは、開発者向けのソースなどが入ったものも別途Oracleが配布しており、JREではなくJDKと呼ばれています。
http://www.oracle.com/technetwork/java/javase/downloads/index.html
まずこちらで、JDKをプラットフォーム別にダウンロード、インストールします。
Windowsでは32ビット、64ビットの2つがあるので、OSの種類に応じて選択してください。

尚、インストールはJavaランタイム、JDKの2回あります。

2:Android SDK toolsのダウンロード
2016年4月現在、Android Studio 2.0が最新の開発環境です。
ただ、これはadb sideloadやfastboot機能を使うには余計な機能がたくさんあるので、機能の一部のみのコマンドライン用SDK toolsを以下よりダウンロードします。
Get just the command line toolsまでスクロールし、プラットフォーム向けのzipファイルをダウンロードしてください。EXEでもいいのですが、当方はいつもzipです。
http://developer.android.com/intl/ja/sdk/index.html#Other
保存はとりあえずデスクトップで問題ありません。
フォルダ形式で保存しておくと、消してもまた同じ所に作れば再利用可能です。

3:JavaとSDKのパスを通す(4と同時に参照)
これが一番めんどくさいんですが、ここさえクリアしちゃえば後は楽勝です。

システムの詳細設定→環境変数

システムの詳細設定→環境変数


Windowsであれば、検索窓に「システムの詳細設定」と入力すれば出てくる画面で、環境変数をクリックするとこの画面が出ます。
Pathと書かれた部分に、platform-toolsのルートドライブからのパスを追記します。
ここで文法を間違えると死ぬことがあるので、一番気をつける部分です。
通常、Cドライブがルートドライブになるのでデスクトップにフォルダを追加した場合は、以下の表記になります。
C:\Users\コンピュータ名\AppData\Local\Android\android-sdk\platform-tools;
セミコロンまでちゃんと入れて、全ての変数がセミコロンの間に入るようにしてください。
これでOKを押してそのまま保存すれば、パス通しは成功です。

4:SDK Managerを起動し、platform-toosを取得する
platform-toolsフォルダにある、SDK.exeをダブルクリックで起動し、しばらく待つといきなりウィンドウが出て来ます。Linux使ってる方には割とメジャーな某IDEに似てますね。

Android SDK画面

Android SDK画面


ここでチェックボックスが色々ついていますが、必要なのはplatform-toolsだけなので、チェックはそこだけでOKです。
platform-toolsにチェックを入れたら、Install Packagesを押してAcceptしてください。
これで自動的にフォルダ内部にplatform-toolsフォルダが出来ます。

5:NEXUSデバイスの最新版USBドライバを取得する
Windows環境の場合、こちらからUSBドライバをダウンロードしてください。
http://developer.android.com/intl/ja/sdk/win-usb.html
ドライバ検索中に、ダウンロードしたファイルを解凍し、フォルダ指定をすれば自動でインストールされます。

6:USBで接続し、差分OTAファイルをコマンドプロンプトを使って端末に送る
4で行ったドライバインストールでUSBでのデータ通信、リカバリモードでのドライバも同時に入りますので、リカバリモードに以下の手順で入ります。

電源オフ→電源ボタンと音量下ボタンを同時押し→ドロイド君と英数字が出て来たら音量ボタンでRecoveryModeの赤い印を選択し電源ボタンを押して選択→ドロイド君が致命傷を受け倒れている画面が出ますのでそこで電源ボタンを押しながら音量上ボタンを1回押して下さい。

セーフモード

セーフモード


画面がパッと変わって、青い字をベースとしたリカバリ画面が出て来ます。
リカバリモード画面

リカバリモード画面


この画面で
Apply update from ADB
をボリュームキーで選択し、電源ボタンを押して選択します。
そうすると、API level 3などと1行かかれただけの画面に切り替わります。
そしてUSBでPCとリカバリモードでは初めての接続です。
(ちゃんとデバイスが認識されているか確認してください)
ここで、SHIFTキーを押したままplatform-toolsフォルダで
「このフォルダでコマンドプロンプトを開く」を右クリックしてください。
そしてコマンドを以下のように打ちます。
adb sideload (半角スペースをあけてください)

差分OTAファイルは、zip形式で長い名前で配布されています。
こそこそ探してダウンロードしておきましょう。解凍はしないでファイルとして扱います。

先ほどダウンロードした差分OTAファイルをコマンドプロンプトのこの画面にドラッグアンドドロップし、エンターキーを押すとServing ~~~00%などと表示がずらずらと開始されます。
これが始まればもうほぼ成功です。100%まで待ちましょう。
端末側の表示も若干追加されます。

7:送信成功確認と起動後のビルド番号のチェック
端末側の画面に、successfullyなどの文字が出ますので、出ていれば成功です。
OTAファイルが間違っているとそもそもインストールできません。
リカバリモードで
reboot system nowが選択された状態なので、そのまま電源ボタンを押して再起動します。
ここからアプリの最適化が始まりますので、しばらく待ちます。
終了するとOSが起動しますので、設定→端末情報から、ビルド番号を確認します。
きちんとOTAファイルの表記と同じビルド番号になっていれば、無事成功です!

8:おわりに
今後もう少しマシな書き方に直していきますが、iPhoneと違って割とめんどくさい感じは否めません。
セキュリティパッチなら、早めに全ての端末に配信してくれればいいのに、と思いますが、全NEXUS端末が文鎮化したらたまらないので分散している、という理屈は分かります。

とりあえずですが、以上で差分OTAファイルの強制アップデート手順は終了です。
このコマンドプロンプトは割と便利で、ROM焼きにも使えます。
fastbootが走りますので、応用編としていずれROM焼きも記載します。





カテゴリー: Android, アップデート, ガジェット関連 タグ: , , , , パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です