As I said in yesterday’s post, gesture navigation has gotten very popular these days. OEMs are trying to come up with the most intuitive method for their devices but not everyone likes what is available on their device. So today I wanted to show you how to remove the software navigation bar of the Xiaomi Mi A2.
I want to do this so that you can choose the type of gesture navigation you like the most. Yesterday’s article isn’t what I normally do here at Android Explained but I felt it was a good resource to have on hand. I will be covering this method of disabling the Navigation Bar on other devices and it will be good to show people their options.
Let me know if you like the idea of having “best [category] app” lists and I’ll try to come up with some good ones. For now though, let’s get back to navigation bar and how to hide it. There are a number of apps in the Play Store that can force immersive mode.
That is what many people think of when they say “hiding” the navigation bar. The thing is, it’s there when you swipe up and in certain situations, like when using the keyboard, it stays visible. But if you have an Android gesture navigation app installed then you don’t need it to come back at all.
That is why I describe this method as disabling the navigation bar. Since it doesn’t come back with swipe up and it is not visible under any circumstances (e.g. the keyboard example). But what we’re actually doing is pushing the navigation bar down and off the screen.
Warning – It is highly recommended that you install and set up an alternative to the navigation bar. Check out the article I linked above and configure a gesture navigation app before you proceed with the tutorial below
How to Disable the Xiaomi Mi A2 Navigation Bar
- Connect the Mi A2 to the PC with a USB Cable
- Open up a command prompt or Windows PowerShell in the same folder as your ADB and Fastboot tools
- Then type out the following command. . .
adb shell
- . . .and press enter on the keyboard
- This should put you in a shell prompt within the Mi A2
- Once you get here, type out the following command. . .
- wm overscan 0,0,0,-143
- . . .and press enter on the keyboard
- Unless you have changed any Display/Font Size settings, the -143 value should fit well
If you have changed any display, font, or UI type settings (like DPI), then you will need to adjust that -143 value to something else
- If the -143 value doesn’t work for you, adjust it like I show you how to do in the video below to get it just right
Disabling the navigation bar used to be much easier for Android. The only downside was that it required root access because you had to change a setting in the build.prop file. It was an easy change to make but a lot of people simply aren’t too thrilled about rooting their smartphones.
Interestingly, this method is a lot different with the biggest reason being that you don’t have to have root access. The only requirement here is that you have the proper USB drivers installed (which should be done automatically), that you enable Developer Mode, and that you enable USB Debugging Mode access.
With that done, you can connect the Xiaomi Mi A2 to the PC with a USB cable and then execute the adb devices command to make sure the ADB.exe file can see the device properly. As long as it shows up then you can go ahead type out the adb shell so that we gain access to the phone’s shell prompt.
With the older build.prop method (that I still wish worked today), it was a simple on and off switch but now we have to use the wm overscan command with four numerical values after it. All of these values should be at 0 but we want to change the last one to a negative number so that it disables the Mi A2 navigation bar.
Hiding the Xiaomi Mi A2 Navigation Bar
Again, I keep using the term disable but we’re actually just hiding the navigation bar. It’s different than hiding it with immersive mode since it won’t come back with a swipe up. Instead, we’re hiding the Mi A2 Navigation bar by “pushing” it off the bottom end of the screen.
If we make this fourth numerical value low enough then we push it off entirely and we can’t see or interact with it at all. I highly recommend you watch the embedded video above to see what I mean by this and how it works. And of course, I recommend you experiment with it as well.
So, in the tutorial I suggest using -143 because that is what worked best for me in the default state of the Xiaomi Mi A2. However, in the default state if we do something like -50 or -75, then you can see that it only hides the Mi A2 navigation bar half way.
In the video I go through and show you how I get the value just right so you should check it out if -143 doesn’t work for you.
-143 Should be Perfect in the Default Setting
There are a number of ways that you can change the UI element sizes of your device. This can be something as simple as Settings -> Display -> Font Size. . .or you can change the DPI by going Settings -> Display -> Display Size. You could even go into Developer Mode and change the Smallest Width setting (which links to the Display Size feature).
If you have made any such changes (or maybe you’re using a custom ROM, GSI Treble ROM, etc.) then the -143 value at the end of the wm overscan command won’t be right for you. So watch through the video (skip to the part where I start to tinker with the values) to get a better idea of how to find your best setting here.
Something like this is much easier to describe visually in a video than in a text tutorial so that’s why I’m recommending that you watch it (at least watch the important part).
How to Enable the Mi A2 Navigation Bar Again
Now, if you have experimented with this and don’t like gesture navigation. Or maybe you made a big mistake while playing with the wm overscan values. Be aware that you can always bring everything back to normal again by using the following command in the ADB shell. . .
- wm overscan 0,0,0,0
This will reset everything back to normal and enable the Xiaomi Mi A2 navigation bar again.