The PinePhone is basically a tiny Linux computer. With a USB hub connected, it can flash an Android phone. The reverse also works: an Android phone can flash a PinePhone, which is especially useful when you do not have a computer nearby.
If your PinePhone has Tow-Boot installed, hold the power button and volume-up button while booting. Once the LED turns blue, the PinePhone becomes an SD card device. (If it does not, you can still use the method below: use EtchDroid to flash Tow-Boot to an SD card connected through the OTG port, insert it into the PinePhone, boot it, install Tow-Boot first, and then continue.)
After turning the PinePhone into an SD card device, an Android phone can flash the PinePhone system with the help of EtchDroid. The Android side does not need root.
As shown, connect the PinePhone to the Android phone through a hub.

It is normal if the Android phone cannot recognize it, but this message means the USB device was detected.

Open EtchDroid and choose to flash an img.

Select the PinePhone system image, such as a postmarketOS img file.
Next, select the USB device named “Pine64 Pinephone” and allow access. (For some reason, the background turns black here and makes everything hard to see.)

Tap the button in the lower-right corner to start flashing.

The flashing process is shown in the notification area. The speed is actually pretty decent.

After flashing, Android will show it as an unsupported USB device. Disconnect the PinePhone, then hold the power button to boot it.

