← Android Image Index · Web Fastboot

Flash partitions and factory images over WebUSB, no tools to install.

Flashing can permanently break your device. Write the wrong image to the wrong partition and it may never boot again. Nothing is sent until you confirm each action, and -w / fastboot -w update style wiping is off unless you explicitly turn it on. You need Chromium (Chrome, Edge, Opera, Brave) — Firefox and Safari have no WebUSB. Images must already be on this computer: dl.google.com only sends Access-Control-Allow-Origin for flash.android.com, so no other site can read them cross-origin.

Extract images from a factory zip

Pull a single partition out of a factory image without unpacking the whole thing. Factory zips store their inner image-*.zip uncompressed, so this reads the zip directory and fetches only the entry you ask for — a few MiB of I/O instead of gigabytes. Nothing is uploaded anywhere and no file is written to disk unless you ask it to be. CRC-32 is verified after inflating.

From a local file

Or straight from a URL no download

Reads the archive in place over HTTP range requests: about 3 MiB to lift an init_boot.img out of a 4 GiB image. Needs a reverse proxy, because dl.google.com only sends Access-Control-Allow-Origin for flash.android.com.

Reverse proxy not set

A proxy is what makes reading an image from its URL possible: dl.google.com only sends Access-Control-Allow-Origin for flash.android.com. If this page is served by the bundled Worker, the proxy is this origin and the field below shows “built in” — nothing to configure. Otherwise deploy your own (cd worker && wrangler deploy) and paste its URL here. The value lives in this browser's localStorage and is used only to rewrite image URLs.

Device

not connected

Boot the device into the bootloader (adb reboot bootloader, or hold power+volume down), then connect.

product
—
serialno
—
current-slot
—
unlocked
—
secure
—
is-userspace
—
version-bootloader
—
version-baseband
—
max-download-size
—

Reboot

fastbootd is userspace fastboot — required for logical partitions (system, vendor, product…). The bootloader handles boot/init_boot/vbmeta.

Raw command

Raw fastboot syntax, not AOSP fastboot CLI syntax — e.g. getvar:current-slot, erase:userdata, flashing unlock.

Flash a partition

Equivalent to fastboot flash <partition> <file>. Raw and sparse images both work; oversized images are split automatically.


Flash a factory zip

Equivalent to fastboot update image-*.zip: bootloader, radio, boot images and logical partitions in the right order, with reboots in between. Pick the inner image-<build>.zip, or the outer factory zip — both are handled.


Boot an image temporarily

Equivalent to fastboot boot boot.img — boots once without writing anything. Useful for testing a patched init_boot before committing it.

Progress

idle