This are the steps I've took to successfully upgrade to OTA-4 on my Meizu Pro 5 (ex Android edition).
Posting it here since was unable to find any complete guide or solution anywhere.
Hope it will help someone
I’m reproducing the steps I’ve took from memory so there is a chance for some slight mistakes, but the main concept is valid.
Disclaimer: I don't take any responsibilities for bricked devices
Main issue is that the cache partition on the android version is small and cannot accommodate all the installer file.
UBports Installer 0.1.21-beta was unable to work for me saying that boot.img was not found...
I've installed ubports-installer 0.1.12-beta that worked for me:
Go to the fastboot by holding Power + Volume down buttons until phone reboots.
Connect phone to the PC (Linux Debian 9 in my case)
Start ubports-installer (i've started it from command line with sudo ubports-installer -v)
Select your device manually and chose stable 16.04 channel.
Start the installation process.
It will ask you to boot in to the recovery.
Hold power + volume up intill phone reboots.
Installation will now continue.
ubports-installer will download all the necessary files but will fail to push them in to phone via adb shell
since /cache partition is only 512MB in size.
Once it will fail stop the process and locate installer cache files.
in my case (/root/.cache/ubports/pool)
there should be the following files that you will need:
that files need to be manually pushed to the device since there is not enough space to copy all of them at the same time
(ubports-installer should unpacking them 1 by 1 and clean the cache after each extract to avoid this )
Go to the fastboot by holding Power + Volume down buttons untill phone reboots.
open a terminal in the location of your TWRP image and run the below:
sudo fastboot flash recovery TWRP_3.0_m86_patched_st0rm77.img
Reboot in to recovery (Hold power + volume up intill phone reboots)
WIPE system and cache partitions (I’ve had some application issues with settings that were left fromm 15.04 so had to wipe user data as well later on)
Mount cache and system partitions.
push the installer files in to the device:
adb push device.tar.zx /cache
adb push keyring.tar.zx /cache
adb push version.tar.zx /cache
start adb shell by typing in terminal:
sudo adb shell
unpack earlier copied files:
tar xf device.tar.zx
tar xf keyring.tar.zx
tar xf version.tar.zx
Move files to corresponding directories:
cp -a system /system
cp -a /dev /system
Clear /cache partition
rm * -R (Ensure that you are in cache partition )
Push the last file in to device:
adb push ubports.tar.zx /cache
Unpack the archive:
tar xf ubports.tar.xz
copy to system:
cp -a /dev /system
clear cache partition
Reboot he device in to recovery.
Hopefully enjoy your new OTA-4