The Google Play Store came to Chromebooks in 2016, and with it came access to millions of Android apps and games. Since then, we've seen Google tout Android app support as a major feature when launching the best Chromebooks, even as it keeps trying to slowly, quietly kill off Chrome apps. Google's also been pushing Progressive Web Apps (PWAs) over the last year, with popular apps like Twitter and YouTube TV swapping over to offer the same features and layout as a Chrome tab while also giving you a more immersive and natural look.
This has combined with the general lackadaisical approach to apps for Android tablets over the last several years have left Chromebooks with a bit of a minefield. If you download and install an app from Google Play, your app might be a good one, but it's much more likely to be a super-sized phone app or an app that leaves black bars on most of the screen. And given that Chromebooks sales are exploding these days, it's more critical than ever for Google to take charge and push Chromebook apps in a more consistent (and consistently useful) direction.
Large screen app quality: Google's guidelines and the lack of enforcement
Android has long had quality guidelines for large-screen apps, and while the list here has dozens of components on them, once you read the top three, it's very easy to see that these guidelines aren't actually being enforced:
- The app supports both landscape and portrait orientations (if possible). Orientations expose largely the same features and actions and preserve functional parity.
- The app uses the whole screen in both orientations and does not letterbox to account for orientation changes.
- The app correctly handles rapid transitions between display orientations without rendering problems or losing state.
While most apps work in landscape or portrait mode, it's not universal — and the "landscape mode" for many apps uses the same layout as portrait, just with ridiculous amounts of dead space to the right side. Apps like Discord have an event less useful layout in the Android app than just using the Discord website, but at least they scale and use all the space.
Then we have apps like Reddit, which fail criteria two and letterbox your Chromebook screen egregiously when you full-screen the app. It's worth noting that you can get a widescreen layout while the app is in multi-window mode, but if you go full-screen, only the middle third of the screen is used. Of course, Reddit isn't alone in this: Disney Emoji Blitz and WEBTOON are among thousands of apps that egregiously letterbox because they're not designed for a landscape experience.
The final criteria — handling rapid transitions between orientations — is also laughably lacking in most Android apps on Chromebooks, with apps like Accuweather and RadarScope crashing in the middle of resizing them. Swapping between landscape and portrait mode while your Chromebook is in tablet mode also takes a hot second, but that's more to do with Chrome OS than the apps, though apps will take an extra few seconds to pop in and out of fullscreen when you switch from tablet mode to desktop or vice versa.
The Android Developers site has pages of tips and tools for building and optimizing Android apps for Chrome OS, dedicated to helping you dynamically layout your app, support the multiple input methods Chromebooks have — though only a handful of apps actually take advantage of keyboard support — and improve navigation. One small problem, though: this documentation still tells developers to base their "large screen" apps around the 9.7-inch Pixel C, and so apps look okay on smaller devices like the Lenovo Duet but sport tons of dead space on the 13 to 15-inch Chromebooks that have become more and more popular over the last two years.
There's also two other issues that thwart good Chromebook apps: poorly addressed processor diversity and changes in permissions. The former is partially a Chrome OS system problem, as Google hasn't been as on the ball when it comes to optimizing Chrome OS for newer chipsets like the AMD Ryzen series and the Qualcomm Snapdragon 7c.
The latter is the fault of both Google and developers.
Apps on Chromebooks are also hobbled by permission oddities and a lack of attention to hardware
Chromebooks technically shouldn't have any permissions differences from an Android tablet, but because most app permissions are handled through Android and a select few are secondarily gated by the Chrome OS system, that means app permissions on Chromebooks are twice as confusing.
Let's take downloading video for offline playback as an example. Most Chromebooks don't have much extra storage, so users will augment it with a microSD card. Chrome OS has an extra toggle that you have to enable in apps to see external storage devices like microSD cards, but even after toggling this permission on and granting the storage permission to individual apps, many apps still have issues seeing and writing to the SD card.
Of course, that's a drop in the bucket when compared to the differences in app performance between different types of processors. The documentation of device support states that:
Most Android phones have ARM chipsets. However, many Chrome OS devices use x86 chips. The difference is not important for basic apps written in Kotlin or Java. However, for apps written in native code, including those created with game engines, the chipset in the device can be an important concern.
It then goes on to talk about x32 vs x64 apps and ARM translation for x86 Chromebooks, but doesn't require developers to ship with ABIs (application binary interfaces — they contain the CPU instructions for actually running the app) for all processor types. The Android Developers website also doesn't go nearly in-depth enough on the differences in rendering and layout management when building for Chrome OS versus for regular Android devices, leading to janky animations, missing UI elements, and an overall inferior experience.
It doesn't help that when Google brings a new chipset to the party, it doesn't always work properly with Android apps. I've been on the Lenovo ThinkPad C13 for three months now, and it's unable to play DRM-protected content inside any Android app, and since it's the only Chromebook in my stable with this issue, I'm betting it's related to either the AMD Ryzen processor — the C13 is the first Ryzen Chromebook to launch — or the Radeon graphics.
I also finally broke down and bought Premium for Microsoft Solitaire Collection a few weeks ago because I got tired of ads crashing the app multiple times a day on literally every Chromebook I ever played it on in the last three years. Full-screen ads are never laid out that well to begin with, but on Chromebooks they're much worse than on your phone because of the rendering and layout differences between the two platforms.
PWAs can help bridge the gap
As I mentioned at the top of this article, Google has been steering developers towards PWAs for over a year now, and for Chromebooks, they make a lot of sense: PWAs can still function offline if they're built properly, but they'll give you a more self-contained feel while offering you the same dynamic web experience you'd have through the Google Chrome browser.
PWAs can make a huge difference — even if they can't do everything.
Twitter uses a PWA instead of its Android app for Chromebooks and I'm a fan of the experience there, and given how poorly Reddit's laid out in the app on Chromebooks, it might want to seriously consider making the jump, too. PWAs have been very successful on Windows 10 because Microsoft has worked to ensure they have a great experience rather than being a glorified wrapped for a webpage.
Google I/O is next week and we're only seeing two panels dedicated to PWAs, but at least What's new in Chrome OS looks to have "new APIs for web apps" which could help improve the case for PWAs on Chrome OS even more.
Chromebook apps and enforcement: What we need from Google and developers
Regardless of whatever new guidelines and resources Google pushes for apps on Chromebooks during Google I/O, none of them will actually matter until Google Play actually enforces them and kicks back the apps that offer substandard experiences on Chrome OS. Otherwise, to quote a scurvy pirate captain, "the code is more what you'd call "guidelines" than actual rules."
I'm fully aware that Google already has issued surrounding moderator reviews of apps, but if you're not willing to enforce your own quality requirements, what incentive is there for developers to spend any time making apps better for Chromebook users?
A little effort from Google could go a long way.
In addition, I'd love to see the Android Developers team reach out to and work more closely with developers — to improve popular apps — and with the Chrome OS team — to update the guidelines and documentation surrounding app development for Chromebooks. These laptops have come a long way in the last three years, and as they start to account for a decent percentage of the PC market, they deserve application geared towards everything they can do today, not what Chromebooks were limited to years ago.
I'd also love to see the Google Play store get a new category for Chromebook-optimized apps, the same way that Wear OS apps and Google Cast apps have had for half a decade. It'll make it easier for Google to direct users to apps that offer the best experience, incentivize any new quality standards that could be required for an app to be listed there, and maybe —just maybe — it can help us find good Chromebook apps on the first try rather than having to download three or four failures first.
What apps do you use on a Chromebook today?
Now, all of this isn't to say that there aren't great Android apps available for Chromebooks right now: I use Microsoft Solitaire Collection almost every day, and when I'm looking to unwind, I often dip into the Fanfiction.net app — hey, the app adapts better to large-screen layouts than 90% of the apps I've used and KCS writes Star Trek better than Paramount.
But enough about my juvenile entertainments; which Android apps are you using on your Chromebook these days? Have you tried any PWAs yet, or any Linux apps? Let us know in the comments below, as well as any extra changes or guidelines you'd like to see Google implement.