Couldn't Google force (b) relatively easily by saying that starting at some date in the near future, newly released phones are only allowed to ship with GApps if all of their drivers are upstreamed?
IMO a better/more subtle option: mandate at least 5-7 years of security patches for each device including for the kernel. Manufacturers will figure out real quick that their current practices are unsustainable in the long run.
Not better because I don’t think the drivers should be upstreamed, to be clear. Better because it leads the manufacturers to that conclusion on their own.
How do you mandate future behavior? If the device shipped, it shipped, and if Google revokes the Play license four years from now when security patches still haven't been applied, what does the company care? The phones are already sold, Play services aren't going to uninstall themselves, and they can claim they pinky swear to do it this time. Google's only recourse at that point would be to cut out their own market share with no real path to settling the dispute (how can you tell if this time Samsung or whoever will follow through?). At least with a simple upstream requirement, there's an immediate resolution: you can ship the phones with Play once you're done with the upstream merges. Not saying that's in any way likely to happen -- making your terms contingent on the whims of Linus Torvalds does not sounds like a wise strategy IMO -- but it at least makes more sense than after-the-fact requirements.
The more likely scenario is Samsung and others running on their own, in that case. They already have their own store, and crap clones of many Gapps.
Google has suggested that they were leaning in that direction in the past, and the response was not encouraging. Think about how many manufacturers don't ever release updates. The software is seen as a neccesary evil, not as part of the marketing equation.
> The more likely scenario is Samsung and others running on their own, in that case. They already have their own store, and crap clones of many Gapps.
Consider the usual suite of apps that need SafetyNet to work (Snapchat, Netflix, Pokemon Go, Super Mario Run, McDonald's, etc.), then throw in a few more that need Google Play Services for some reason, and don't even work with microG (Hyundai BlueLink, EnelX JuicePass, Lime, PayPal, Roblox, etc.), and there'd be a lot of unhappy customers who want to use those apps but can't.
Yes... But these companies are still unlikely to give a damn. Software is an expense. It isn't seen as a value add, which is also why you won't see software in any of their advertising.