About hard-forking Android, no one was brave enough (pun intended) to do that for Chrome, considering the insane complexity and engineering costs (>$1B/y). (Only Apple was able to affort it with Webkit/Safari, but they are in the ad business too.)
About hard-forking Android, no one was brave enough (pun intended) to do that for Chrome, considering the insane complexity and engineering costs (>$1B/y). (Only Apple was able to affort it with Webkit/Safari, but they are in the ad business too.)
Building and maintainance cost are not linear, especially when you inherit legacy code. The AOSP codebase isn't great, is 4x bigger than the Linux Kernel, and full of "Ship now, patch later" mess.
But I agree that it is a significant endeavor. But the OSS community succeeded in similar projects before, and the current state of the Linux desktop makes me hopeful.
And yet the GrapheneOS devs seem to be managing just fine.
> But I agree that it is a significant endeavor.
Yes, in fact it is orders of magnitude more significant an endeavor that just building upon and improving the existing AOSP stack.
(ETA: See also Microsoft's many years of trying to build its own "Google Play Services" competitor. Eventually breaking and making use of Amazon's. Then giving up entirely again on a de-Googled alternative to running Android apps.)
Huawei provides HMS for example, a somewhat close feature wise set of APIs for their phones that are still on Android. They can even shim play services API, the same way microg does. If anything, what would be needed would be a common abstraction library with different backends to not depend directly on play services
The reason amazon and Microsoft gave up is because they had no commitment, and that operating these services is just pure loss.
Yes, the default apps in AOSP suck. Making a proper dialer is a two day job, so is a contacts app. Android's core APIs are good enough, and privileged permissions are only privileged by the manufacturer, and its IPC mechanisms are very well documented. Noone does it because it sucks, it's a thankless job and nobody's going to install your dialer. The very fact that each manufacturer has their own custom software is demonstration of how easy it is.
Windows phone died because of its lack of apps. Same thing with several other mobile OS's. Ubuntu has a really great OS and UI, but no apps for just basic things renders it useless to even the most basic of users like myself. I don't have games, no banking apps, a few email and Microsoft apps and yet I still couldn't find a way to make it work.
One of the other technical limitations is network. Ubuntu has yet to solve the VoLTE (Voice over LTE) riddle. This is a major sticking point for US consumers.