And what do you mean "graphics primitives"? You have an abstraction layer, the same as you do on Linux. Like you ain't writing directly against a particular video card either , unless you write a kernel driver.
If you mean executable formats, they're their own different things, it's just machine code wrapped OS-specially. I don't see how they are fundamentally different "from an app" - you also have a bunch of metadata in there and an entry point. Just because it's an XML file in Android's case which can just as well jump to machine code (you can have Android apps written in CPP/Rust whatnot), it's all just an implementation detail.
Well, do you mean xclock to draw over different windows/activities? Because that's just a different similarly to how Wayland is different from X -- it's generally frowned upon to not have a central entity manage who can draw where.
Otherwise, you can trivially do whatever you want, including drawing manually similarly to X's API, or using OpenGL or similar hardware accelerated apis.
People use a phone for their most private information, including banking credentials, credit card credentials, car keys, etc. The banks, etc. are never going to permit running their apps on devices that can run arbitrary binaries. Most are already blocking rooted Android devices and Android devices with an unlocked bootloader. The fact that this is still possible on desktops (though not everywhere anymore, e.g. my bank requires you to use a phone app for authentication) is for historical reasons.
Also, you are an extremely small niche. If you are sufficiently motivated, you can live like that (run Linux phones, work around banks, etc.), but this will never be mainstream and this was implied in the question of the post (Will Linux phones become a viable alternative to the Android/iOS duopoly?).
If there will be a viable alternative to the Android/iOS duopoly, it will look a lot like Android/iOS. The best chance is an AOSP-based system like GrapheneOS.
You can still run traditional Linux desktop apps in a VM on such phones.
And you think that this is fine? I will fight for my rights for one.
The post goes into detail about the reason for the current duopoly is the difficulty in procuring modern SOCs with linux support, nothing to do with how said phones will be used.
And I don't really care about being able to bank on my phone, I would gladly buy a cheap android device for it if they stop you from being able to bank on desktop devices, I just need linux on phones because of how much android sucks for daily use and how annoying it is to do anything on it. If we do get the ability to run android on modern hardware, it stops being necessary to have a separate desktop/laptop as well, I could just use a dock, or just a keyboard and mouse instead, especially since the Macbook Neo has shown current mobile hardware is more than enough for "casual" desktop use.