The walled garden is not what protects your email, 2FA SMSes or bank details. The OS sandboxing and permissions system do that. The two are often conflated, but the two concerns are orthogonal really.
Heck, you could easily imagine a system where software distributed outside the app store can only access a subset of perms if security is such a concern, and that'd still be less anti-competitive
Due to the way iOS works (dynamic dispatch) private APIs can only be prevented through an App Store review process.
And many of those APIs can be used to extract enough information to fingerprint the device, determine your location or steal your data e.g. accessing the list of WiFi networks or browser history.
> Due to the way iOS works (dynamic dispatch) private APIs can only be prevented through an App Store review process.
That's complete nonsense.
Dynamic dispatch has nothing to do with the ability or not of a program to access API. Dynamic dispatch is the selection at runtime of the correct version of a polymorphic function. Obviously, you can sandbox programs written in languages using dynamic dispatch.
You could easily argue that Apple has built an OS that is deeply broken and insecure if they aren't able to technically enforce permissions of apps to do certain things. Virtually any other OS has that capability.
They can't be prevented reliably even through the App Store process - that's simply impossible.
The point of a private API not security, it's to distinguish between the public interface that is meant to be stable and implementation details that might change.
They might do some rudimentary checks to catch obvious usage of private APIs, but it's not part of the security model and still apps show up on the App Store that use private APIs, all the time.
Heck, you could easily imagine a system where software distributed outside the app store can only access a subset of perms if security is such a concern, and that'd still be less anti-competitive
I think this system is called the world wide web.
Apple would have a much stronger case if mobile safari were a first class PWA platform, instead of being almost useless for PWA's. Then the choice would be: make a PWA and live in the browser sandbox, or go through approval and be on the app store.
Heck, you could easily imagine a system where software distributed outside the app store can only access a subset of perms if security is such a concern, and that'd still be less anti-competitive