It would be neat if one could have both worlds: have a phone which normally runs FLOSS, but if one needs Google things, it can spin up all the services required, and launch the app needed. And when one is finished with that app, press Quit to terminate all the Google services.
It seems phones are now powerful enough that even virtual machines should be possible...
What you're describing is a web browser. Spin up/connect to a service, in a sandbox, and then get rid of the app when you're done.
Of course, many of Google's own apps are not particularly web or mobile friendly. It annoys me to no end that for all that Chrome/Android is pushing the progressive web, basically zero of Google's own apps utilize it. The progressive web does have some pretty serious shortcomings and problems, but for the most part, pretty much every major Google app (Google Music, Youtube, Maps, GMail) could be thrown out of the app store and replaced with a progressive web app with offline access, and everything would work fine.
It's not even like the current offline support for their native stuff is any better than a progressive web app's would be; Google Music will often bug out and remove access to downloaded music if it can't find an Internet connection. Youtube Red loses and corrupts downloaded videos almost like it's on a schedule. A web cache would be just as reliable as whatever they're using now.
As far as I'm concerned, there's zero technical reason why we couldn't have this right now.
I like to think about it this way: web is for documents, apps are for tools. If it can be linked to universally, it is a document. If it cannot, it is a tool. Would I install facebook.exe on my PC in order to browse it? No, it would feel like installing a virus. Then why would I do this on mobile?
I've had this conversation with people before on HN, but to take this philosophy even a step farther, I feel like I have an almost regressive view of most apps compared to a lot of people on here.
I honestly don't see the difference between an application like Google Maps and a document. Google Maps should be presentable in pure text without CSS, and the overlay is basically just styling on top of that. You have a list of points with information associated with them including Latitude and Longitude. XML is perfectly fine for that. Or you have a list of directions or reviews, which obviously should be presentable in pure text.
Same with Google Music. Google Music isn't an application. It's a search box that displays a list of links to audio files. It's fine that Google puts pretty interfaces on top of this stuff, and CSS is good for that, but I just still don't see what they're doing that requires native access.
Minus the absolutely horrible performance that would come out of using Electron and JS for everything, I really don't feel like it would be difficult to remake the majority of what people call native apps in HTML/CSS. A lot of the native apps on my computer are basically just fancy ways to present tree-like information.
Stuff like Gimp, or Blender, or a 3D game - okay, we can talk about applications. But Maps, or Youtube? I dunno, maybe I'm just old and cranky. Certainly Facebook and Reddit don't fit into those categories.
I find such things as email, maps and streaming services to be proper use cases for native applications, because they either require non-standard connectivity / caching implementations, or hardware features which are not equally available on all browser-connected devices. JavaScript and CSS should be used to enhance hypertext document browsing experience, not to replace OS-level applications where they are needed.
It seems phones are now powerful enough that even virtual machines should be possible...