Apart from this, what is most needed in both platforms is an application firewall - not every app needs to be allowed to connect to the internet.

I can't believe this still isn't a thing outside of GrapheneOS. Being able to revoke network permissions is a fundamental security and privacy tool that's willfully left out of both Android and iOS.

There's zero reason not to include it as a toggle.

On iOS it wouldn’t even be that hard. There’s already a toggle to disable use of cellular connectivity. Add a separate one for non-cellular (iPadOS can connect via Ethernet), and/or a “disallow all” toggle.

We are partly there in spirit with App Transparency keeping track of the IPs and hostnames apps connect to.

Apparently chinese versions of ios (specifically for China) already have this feature because the Chinese government mandates it!