Update 1 (5/9/19 @ 7:28 PM ET): Shortly after the publication of this article, AndroidAuthority published an article stating that Google won't force OEMs to get rid of their own gestures. More details below.

During last year's Google I/O developer conference, Google unveiled the first Android P beta with Google's new navigation gesture controls. Google's new gestures felt half-baked because the gestures didn't free up any additional screen space nor did they replace the back button. The new gestures introduced in Android Q beta 3 are different, however. Google's new "fully gestural navigation" implementation no longer has any buttons for the user to press, the bottom is a lot smaller, and the bottom bar is a lot thinner. The new gestures feel a lot more iOS-like, but that's not a bad thing because Apple got gestures right from the start.

Since Google showed off the new gestures during the keynote, we've wondered what will happen to the Android ecosystem with the introduction of yet another gesture control interface - especially one that Google is asking developers to make changes to accommodate. Now, we've learned that Google is making their gesture control mandatory for all devices running Android Q. Google's navigation gestures are now just Android's navigation gestures. As a reminder, here's how Google's new gestures work, as detailed in our earlier article on all the changes we've spotted in the latest beta.

  • Swipe vertically up from the bottom to go home
  • Swipe horizontally from the left or right to go back
  • Swipe diagonally from the bottom left or right corner until your finger reaches the middle of the screen to trigger Google Assistant
  • Swipe horizontally left or right on the bottom gesture bar to quickly switch between apps
  • Swipe up and hold to access the recent apps overview

During the "Supporting mobile usability with Dark Theme and Gestures in Android Q" session today, Ronan Shah, product manager at Google on the Android System UI team, confirmed that only 2 navigation methods will be supported in the Android platform: Google's new gestures and the traditional 3 button gestures.

"In the future for Android, we're going to be supporting 2 nav modes moving forward. The first one is 3 buttons, you know Android users love 3 buttons. We know that it's super usable and it also addresses a lot of accessibility needs that gestures just cannot. On the other hand, we also know that there's a lot of desire for gestures, so we will be supporting 1 gesture mode, which is what you saw, moving forward in Android - and only that one." - Ronan Shah, Google.

Mr. Shah continues, explaining why they've decided to restrict OEMs from implementing their own gesture controls.

"Users increasingly want immersive experiences in Android, and one thing that device makers have done is try to approach this from a software side. And what they've done is built their own gesture nav. And every device maker has a different impression of how gesture nav should work. What we recognize on a platform side is that kind of gets insane for a developer. Thinking about N different gesture navs when you're trying to develop, design for, test for, your app, it just kind of gets insane. So with that in mind, we introduced this gesture nav in Q and we're going to be standardizing the ecosystem as of Q on 3 buttons and our model moving forward." - Ronan Shah, Google.

This makes a lot of sense because the new gestural navigation in Android Q will require many developers to rework their apps to handle conflicts. Apps with sidebars won't play well with the new back button gesture, so developers will either need to move away from such a UI or disable gesture controls with the new setSystemGestureExclusionRects API. Because developers now have to make this consideration, it's best that there's only one gesture control implementation going forward so developers won't have to consider how to handle gesture behavior on non-Google devices. Every device manufacturer has its own navigation gesture system, so it's nice to know that Google is standardizing gestures in Android Q around a single model.

Sadly, this means that the awesome gesture controls from OnePlus, Huawei, Xiaomi, and Motorola won't be available in their respective Android Q releases. On the other hand, it's great that Google is mandating the inclusion of the traditional 3 button navigation as an optional mode. Google previously removed the 3 button navigation from their own Pixel 3 and Pixel 3 XL smartphones, but both devices now have access to the traditional mode without having to resort to any tricks.

Thanks to Andreas Proschofsky from DerStandard for the heads up!

Update 1: OEMs won't be forced

Despite what was said on stage, Google confirmed to AndroidAuthority that they won't explicitly disallow third-party gestures. Instead, Google sees third-party gestures "as a power user option." Thus, while OEMs will be forced to offer the traditional 3 button navigation and Google's new gestures, they won't be restricted from offering additional navigation gestures options. Users will choose between the 3 button navigation mode and Android Q gestures during setup, but it's unclear whether OEMs are allowed to show their own gestures during setup.

This is an odd stance for Google to take, and it directly contradicts what was said on stage at Google I/O. Allowing OEMs to continue to offer their own gestures does nothing to standardize the ecosystem as Google claimed they wanted to do at I/O. Developers will thus have to cater to multiple gesture modes from multiple device makers, which is exactly the problem that was to be solved by forcing a unified gesture mode in Android Q.