With the launch of Android 8 (Oreo), Google has introduced two new concepts. The first concerned A / B partitions. This made all devices with two partitions capable of receiving Android updates without a system. It also allowed users to continue using their device on the active slot while the OTA settled on the one that was idle. Even if the OTA download fails, the Android system will not be affected.
But it was not the only major change introduced by the giants of Silicon Valley. Previously, you could extract the OTA update package and get hold of various partition files. These included the image files of the boot partition, the system partition, the modem file, among others. But now you will not find these image files as individual files. Indeed, they have all been grouped in the Payload.bin file.
For example, to access image files that belong to a partition, you must extract the Payload.bin file. Detailed instructions on this are given below.
Download Dumper Payload & Python
- To extract the Payload.bin file, you need a Payload unloading tool. Grégory Montoir created this tool that supports many A / B partitioning devices such as Mi A1, Mi A2, OnePlus 7 / 7Pro, etc. Download the tool from here: payload_dumper.zip
- You also need Python installed on your PC. Download Python v3.7 +
- Also note that this tool can only be used to extract the Payload.bin file from full OTA update packages, not incremental ones.
Steps to extract Android OTA payload
The Payload Dumper tool will only use its features if Python is installed on your PC. Follow the instructions given in the section below to install it. Then, in the next section, instructions for extracting the Payload.bin file will be provided.
How to install Python on your PC
- Download the latest version of Python from the link above.
- Click on python-3.7.x.exe to open the installation wizard.
- The first step asks for the installation directory. If you want to continue with the given directory, select Install now or choose Customize the installation if you want to install it elsewhere. In any case, be sure to keep the installation directory in memory, as it will be needed later.
- The installation will be finished in a minute or two. Click on close to leave the assistant.
Extract the OTA file Payload.bin
Now that Python has been successfully installed, you can extract the Payload.bin file using Dumload Payload. Follow the instructions below:
- Extract the content of payload_dumper.zip to the exact same location where you installed Python.
- If you chose the default directory when installing Python, extract the content C: Users USERNAME AppData Local Programs Python Python37-32
- Also extract the contents of the Full OTA package from your device. Copy the payload.bin file from the OTA package and move it in the Python directory. Thus, this directory will now contain the Payload Dumper Tool, the payload.bin file and the Python software.
- In the Python37-32 folder, tap the address bar and enter cmd open the command prompt.
- Copy and paste the code below to install the necessary dependencies:
python -m pip install -r requirements.txt
- Finally, enter the code below to extract the partition image files found in the Payload.bin file.
python payload_dumper.py payload.bin
- Wait for the process to complete. The duration may vary depending on the size of the OTA package. Once done, go to exit folder. The extracted image files will be present.
You can now flash these files on your device using various fastboot commands. Or use the extracted boot.img file and correct it via Magisk for root access.
With that, we come to the end of the guide on how to extract the Android OTA payload.bin file with the help of Payload Dumper Tool. Post your queries, if any, in the comments box below.
Read more: Check the MD5 checksum on Windows, Mac, Linux