More than 1 billion Android devices run outdated software

This is horrifying:

But even with the data we have, we can take a guess at how many outdated devices are in use. In May 2017, Google announced that there are over two billion active Android devices. If we look at the latest stats (the far right edge), we can see that nearly half of these devices are two years out of date. At this point, we should expect that there are more than one billion devices that are two years out of date! Given Android’s update model, we should expect approximately 0% of those devices to ever get updated to a modern version of Android.

Whenever I bring up just how humongous of an issue this is, and just how dangerously irresponsible it is to let average consumers use this platform, apologists come out of the woodwork with two arguments as to why I’m an Apple shill or anti-Google: Google Play Services and Project Treble.

Google Play Services indeed ensures that a number of parts of your entire Android operating system and stack are updated through Google Play. This is a good move, and in fact, Android is ahead of iOS in this respect, where things like Safari and the browser engine are updated through operating system updates instead of through the App Store – and operating systems updates present a far bigger barrier to updating than mere app updates do. However, vast parts of Android are not updated through the Play Store at all, and pose a serious security threat to users of the platform. Google Play Services are anything but a silver bullet for Android’s appalling update situation.

Project Treble is the second term people throw around whenever we talk about Android’s lack of updates, but I don’t think people really understand what Project Treble is, and what problems it does and does not solve. As Ron Amadeo explains in his excellent Android 8.0 review:

Project Treble introduces a “Vendor Interface” – a standardized interface that sits between the OS and the hardware. As long as the SoC vendor plugs into the Vendor Interface and the OS plugs into the Vendor Interface, an upgrade to a new version of Android should “just work.” OEMs and carriers will still need to be involved in customizing the OS and rolling it out to users, but now the parties involved in an update can “parallelize” the work needed to get an update running. SoC code is no longer the “first” step that everyone else needs to wait on.

Treble addresses an important technical aspect of the Android update process by ensuring OEMs have to spend less time tailoring each Android update to every specific SoC and every specific smartphone. However, it doesn’t mean OEMs can now just push a button and have the next Google Android code drop ready to go for all of their phones; they still have to port their modifications and other parts of Android, test everything, have it approved by carriers, and push them out to devices worldwide.

Project Treble addresses part of the technical aspect of Android updates, but not nearly all of it. While Treble is a huge improvement and clearly repays a huge technical debt of the Android platform, it doesn’t actually address the real reason why OEMs are so lax at updating their phones: the political reason. Even in the entirely unrealistic, unlikely, and honestly impossible event Treble solves all technical barriers to updating Android phones, OEMs still have to, you know, actually choose to do so.

Even the most expensive and brand-defining Android flagships – the Note, Galaxy S, LG V, and so on – are updated at best only six months after the release of a new version of Android, and even then, the rollout usually takes months, with some countries, regions, carriers, or phones not getting the update until much, much later.

This isn’t because it really is that hard to update Android phones – it’s because OEMs don’t care. Samsung doesn’t care. LG doesn’t care. HTC doesn’t care. They’d much rather spend time and resources on selling you the next flagship than updating the one you already paid for.

Treble will do nothing to address that.

But let’s assume that not only will Treble address all technical barriers, but also all political barriers. Entirely unlikely and impossible, I know, but for the sake of argument, let’s assume that it does. Even then, it will be at best four to five years before we experience these benefits from Treble, because while Treble is a requirement for new devices shipping with Android 8.0 out of the box, it’s entirely optional for existing devices being updated to 8.0. With the current pace of Android updates, that means it will be no earlier than four to five years from now before we truly start enjoying the fruits of the Treble team’s labour.

At that point, it will have been twelve to thirteen years of accumulating unupdateable, insecure Android devices.

The cold and harsh truth is that as a platform, Android is a mess. It was quickly cobbled together in a rushed response to the original iPhone, and ever since, Google has been trying to repay the technical debt resulting from that rushed response, sucking time and resources away from advancing the state of the art in mobile operating systems.

As an aside, I have the suspicion Google has already set an internal timeline to move away from Android as we know it today, and move towards a new operating system altogether. I have the suspicion that Treble isn’t so much about Android updates as it is about further containerising the Android runtime to make it as easy as possible to run Android applications as-is on a new platform that avoids and learns from the mistakes made by Android.

Each and every one of you knows I’m an Android user. I prefer Android over the competition because it allows me to use my phone the way I want to better than the competition. Up until recently, I would choose Android on Apple hardware over iOS on Android hardware – to use that macOS-vs-Windows meme – any day of the week.

These days – I’m not so sure I would. Your options as an Android user today? A Pixel phone you probably can’t buy anyway because it’s only available in three countries, and even if you can buy it, it falls apart at the seams. You can buy a Samsung or HTC or whatever and perpetually run outdated, insecure software. Or you can buy something from a smaller OEM, and suffer through shady nonsense.

You have to be deeply enveloped in the Android bubble to not see the dire situation this platform is in.

95 Comments

  1. 2017-11-14 1:36 pm
    • 2017-11-15 12:53 am
      • 2017-11-15 8:01 am
    • 2017-11-15 12:51 pm
    • 2017-11-15 3:42 pm
  2. 2017-11-14 2:04 pm
    • 2017-11-14 2:06 pm
      • 2017-11-15 12:53 pm
    • 2017-11-14 3:21 pm
    • 2017-11-15 11:15 pm
  3. 2017-11-14 2:25 pm
    • 2017-11-15 7:16 am
      • 2017-11-15 12:32 pm
        • 2017-11-15 3:14 pm
    • 2017-11-15 10:59 am
      • 2017-11-15 12:37 pm
  4. 2017-11-14 2:29 pm
    • 2017-11-14 3:02 pm
      • 2017-11-15 3:14 pm
    • 2017-11-14 3:21 pm
  5. 2017-11-14 2:47 pm
  6. 2017-11-14 2:53 pm
    • 2017-11-14 4:26 pm
      • 2017-11-14 7:52 pm
      • 2017-11-15 8:59 am
        • 2017-11-15 9:50 am
          • 2017-11-15 3:18 pm
          • 2017-11-15 11:20 pm
          • 2017-11-16 10:24 am
          • 2017-11-16 11:12 am
          • 2017-11-16 7:28 pm
          • 2017-11-16 11:33 pm
          • 2017-11-17 2:07 am
          • 2017-11-17 3:34 am
          • 2017-11-17 4:46 am
          • 2017-11-17 7:20 am
      • 2017-11-15 3:15 pm
  7. 2017-11-14 4:18 pm
    • 2017-11-14 5:08 pm
    • 2017-11-14 5:19 pm
    • 2017-11-14 6:00 pm
      • 2017-11-15 5:03 pm
        • 2017-11-15 6:02 pm
          • 2017-11-18 2:08 pm
          • 2017-11-18 4:47 pm
  8. 2017-11-14 6:25 pm
    • 2017-11-14 6:33 pm
  9. 2017-11-14 6:39 pm
  10. 2017-11-14 7:36 pm
    • 2017-11-14 7:58 pm
      • 2017-11-15 12:57 am
        • 2017-11-15 3:17 pm
  11. 2017-11-14 10:06 pm
    • 2017-11-15 3:55 am
      • 2017-11-15 5:19 pm
        • 2017-11-15 6:50 pm
          • 2017-11-16 10:09 pm
          • 2017-11-16 11:35 pm
        • 2017-11-15 7:34 pm
  12. 2017-11-14 11:20 pm
  13. 2017-11-15 2:32 am
  14. 2017-11-15 3:40 am
  15. 2017-11-15 4:00 am
  16. 2017-11-15 6:47 am
  17. 2017-11-15 6:48 am
  18. 2017-11-15 7:36 am
  19. 2017-11-15 7:49 am
    • 2017-11-15 9:05 am
      • 2017-11-15 8:24 pm
  20. 2017-11-15 7:55 am
  21. 2017-11-15 8:29 am
  22. 2017-11-15 8:37 am
    • 2017-11-15 9:46 am
      • 2017-11-16 4:43 am
        • 2017-11-16 7:04 am
  23. 2017-11-15 10:21 am
  24. 2017-11-15 10:49 am
    • 2017-11-15 5:07 pm
      • 2017-11-15 11:21 pm
        • 2017-11-16 12:35 am
          • 2017-11-17 12:01 am
          • 2017-11-17 12:58 am
  25. 2017-11-15 4:38 pm
  26. 2017-11-15 6:18 pm
  27. 2017-11-15 9:39 pm
  28. 2017-11-15 9:48 pm
    • 2017-11-15 10:36 pm
  29. 2017-11-15 10:58 pm
    • 2017-11-15 11:26 pm
  30. 2017-11-15 11:28 pm
  31. 2017-11-16 10:36 am