fastboot を使用してフラッシュする

このページでは、fastbootadb ツールを使用して、Android ビルドをデバイスに書き込む方法について詳しく説明します。adb を使用すると、開発用ワークステーションを Android 搭載デバイスに直接接続し、さまざまなオペレーションを実行できます。Fastboot を使用すると、Android をインストール(書き込み)してデバイスのブートローダーを操作できるため、OS とアプリの変更をテストできます。アプリ開発に重点を置いた adb の仕組みについて詳しくは、Android Studio の Android Debug Bridge(adb)のページをご覧ください。adb のコードについて詳しくは、adb の README をご覧ください。

fastboot と adb があることを確認する

Android をビルドすると、adb と fastboot はデフォルトでビルドされます。adb と fastboot が利用可能であることを確認するには、次のコマンドを実行します。

adb --version
fastboot --version

バージョン番号が表示された場合は、fastboot と adb がインストールされています。バージョン番号が表示されない場合は、Android を正常にビルドできているか確認し、USB 接続を有効にするに進みます。

USB 接続を有効にする

デバイスで Android を実行する前に、USB 接続を有効にする必要があります。

  1. 開発者向けオプションで OEM のロック解除と USB デバッグを有効にします。

    1. 設定アプリで [デバイス情報] をタップします。
    2. [ビルド番号] を 7 回タップします。
    3. 開発者向けオプションが有効になりました」というメッセージが表示されたら、[<-] をタップします。
    4. [システム] をタップし、[開発者向けオプション] オプションをタップします。
    5. [OEM ロック解除] と [USB デバッグ] を有効にします。[OEM ロック解除] が利用できない場合は、インターネットに接続して、デバイスをチェックインします。それでもチェックインできない場合、電話アプリで「*#*#CHECKIN#*#*(*#*#2432546#*#*)」と入力することで、強制的にチェックインさせることができます(SIM は不要です)。番号を入力すると(通話ボタンを押す必要はありません)、テキストが表示されなくなり、成功の通知が表示されます。

    OEM のロック解除が利用できないままだと、デバイスは携帯通信会社によって SIM ロックされ、ブートローダーのロックを解除できなくなります。

  2. デバイスをワークステーションの USB ポートに接続します。

Fastboot モードでブートする

Android をデバイスにフラッシュする前に、デバイスを Fastboot モードにしておく必要があります。デバイスを Fastboot モードで起動する方法は 2 つあります。

  • adb コマンドを使用する: コマンドラインで「adb reboot bootloader」と入力します。
  • キーの組み合わせを使用する:
    1. デバイスのキーの組み合わせを確認します。Fastboot キーの組み合わせの表については、fastboot キーの組み合わせをご覧ください。
    2. デバイスの電源を切ります。
    3. デバイスの電源を入れ、すぐにデバイスのキーの組み合わせ(ステップ 1 で確認したもの)を長押しします。

ブートローダーのロックを解除する

Fastboot モードで起動したら、ブートローダーのロックを解除する必要があります。

ブートローダーのロックを解除する手順は次のとおりです。

  1. (オプション)デバイス上にある重要なファイルをすべてバックアップします。
  2. デバイスのロック解除コマンドを実行します。

    • 2015 年以降に製造された Nexus または Google Pixel デバイスにアップデートしている場合、fastboot flashing unlock を実行します。
    • Google Pixel 2 の場合: ブートローダーをフラッシュするには、Google Pixel 2 のブートローダーが Oreo MR1 のバージョン以降にアップデートされていることを確認します。Google Pixel 2 をこのバージョンにアップデートするには、無線(OTA)アップデートを適用するか、フル OTA をサイドローディングします。
    • TMZ20a より前のバージョンのローダーしかない Google Pixel 2 XL の場合: フラッシュする前にクリティカル パーティションのロック解除が必要になる場合があります。Google Pixel 2 XL のクリティカル パーティションのロックを解除するには、fastboot flashing unlock_critical を実行します。
    • 2015 年より前のデバイスのロックを解除する場合、fastboot oem unlock を実行します。

    対象デバイスに確認画面が表示されます。

  3. すべてのユーザーデータを消去してデバイスのロックを解除することを確認します。

デバイスをフラッシュする

1 つのコマンドで Android システム全体をフラッシュできます。1 つのコマンドでシステム全体をフラッシュすることで、フラッシュ対象のシステムと、インストールされているブートローダーおよび無線通信との互換性を検証して、起動用、リカバリ用、システム用のパーティションをすべて書き込み、システムを再起動します。

デバイスをフラッシュする手順は次のとおりです。

  1. 起動時に適切なキーの組み合わせを長押しするか、次のコマンドを使用して、デバイスを Fastboot モードにします。

    adb reboot bootloader
  2. デバイスが Fastboot モードになったら、以下のコマンドを実行します。

    fastboot flashall -w

-w オプションは、デバイス上の /data パーティションをワイプします。これは特定のデバイスを初めてフラッシュする際に便利です。

ブートローダーを再ロックする

ブートローダーを再ロックするには、次のコマンドを使用します。

  • 2015 年以降のデバイスの場合、fastboot flashing lock コマンドを実行します。
  • 2014 年以前のデバイスの場合、fastboot oem lock コマンドを実行します。

デバイスを出荷時の状態に復元する

Google デバイスのファクトリー イメージは、Nexus デバイスおよび Pixel デバイスのファクトリー イメージから入手できます。Motorola Xoom のファクトリー イメージは、直接 Motorola から入手できます。