One VM per app would need a lot of RAM. Maybe one VM for Linux/Android, and one for iOS, would be a decent compromise. We'd still 'waste' some RAM, but isolation between different Android apps could be handled by cgroups/namespaces.
He said Android or iOS. It seems like massive overkill to have a phone that can run both. Even running Android apps well is a pretty tall order, running iOS apps natively on your own open source phone seems like a pipedream. It took even Google a long time and a lot of investment to get Android apps to work reasonably well on ChromeOS.
True. The question is whether the Linux emulation can be good enough to satisfy Android. There are lots of funny quirks ...
I wish something like CloudAPI/Capsicum would take off to be more secure, while also being an open platform, instead of Linux ubiquity rendering standards irrelevant.