Since v2.3, iodéOS uses user build type instead of userdebug(with the ability to enable additional debugging that normally violates the security model of the platform).
As a consequence root access and debug capabilities are no longer available in developer mode.
If you still want to have root access, you would need to flash a more permissive recovery such as TWRP & flash Magisk from the recovery using the following commands:
I used the default sideload process and am rooted with the latest Magisk but no joy. Have hit the wall of understanding and unfortunately no joy here. Back to my iPhone 8+ for now until I can recoup enough patience and understanding again. Maybe in a year or two the problem may resolve itself. If only someone could add the Visible the global APN settings to the default APN list as I stated in the TeraCube forum under Visible + Teracube. But nonetheless, I digress. Oil well.
Would anyone be so kind as to share how they have rooted iodéOS for FP2 3.1 20220726?
Laying out a step-by-step guide to rooting the most current version of iode would be super helpful since the recovery change.
I have the Magisk app already installed, but I ask because I’m used to taking the boot.img from the ROM (like with CalyxOS) and patching it, then uploading it and using the Magisk app. With this version of iode, I don’t even see a boot.img to alter in the iodéOS for FP4 .zip file, just a huge payload.bin file and some other bits.
How have you guys successfully rooted iodéOS 3.1 20220726 with Magisk? Thanks!
But anyway I won’t update iodé Os anymore, because nothing is telling you before the update if you are going to loose your root with the update… and it’s a big waste of time after all… hours and hours of research on the web, trying stuff for nothing.
Sony Xperia XA2 iodé Os 3.4-20231215
There’s pretty thorough guides on magisk’s git for how to deal with the OTA updates… not that I’ve ever had a painless experience with them and usually just end up uninstallling magisk, installing ota and re rooting after.
I use the python script from earlier in the thread to get the boot.img and it’s a lot easier than trying to keep root while ota updating
As I’ve wrote above: I just use the python script for extracting the payload.bin:
Place the files extract_android_ota_payload.py, update_metadata_pb2.py and the [name of your rom].zip in a folder of your choice. Open a terminal and run the script with python3 extract_android_ota_payload.py [name of your rom].zip
After that you’ll find the extracted image files in the folder you’ve run the script in.
I did that on a linux pc and didn’t tried that with windows yet. Maybe with windows this could be differerent.
About root and OTA updates:
Wait until the update is finished but don’t reboot your device yet. Open Magisk app, tap on Install and choose the method “Install to inactive slot (after OTA)”. After Magisk installation is complete you can reboot your device.
I’m doing this on a FP4 device since iode 2.4 with every beta update and never had lost root after it. You just have to take care installing Magisk after OTA update and before reboot.
Edit: after you have your extracted boot.img I suggest to follow the official Magisk Installation guide with flashing the magisk patched boot.img with fastboot. So you don’t have to install TWRP.
On my device at least (cepheus) the OTA payload (from 4.7 to 4.8) is just a zip. I don’t use a custom recovery.
Installation process reboots to iode’s recovery, and recovery installs the update, then reboots to normal.
So my process is:
Download OTA (using “get link”)
Extract boot.img from the OTA zip
Patch extracted boot.img with magisk & transfer patched image to computer
Apply the OTA on the phone (reboots to recovery to apply, then reboots to phone)
→ You’re standing booted regularly with an un-rooted phone.
Reboot to fastboot and flash patched boot.img
→ Magisk hasn’t lost its settings, all modules should be immediately re-enabled.
NB: The OTA applies without issue with the phone being rooted before applying the update. (no need to unroot from magisk before)