We know that most of the android phones these days have a lot of different settings for changing literally everything ranging from notifications to system colors, system colors, etc. There are some settings that are not even visible directly to us on our smartphone and they are hidden in some sense. They are somewhere under the Developer options that are quite focused towards creating application in android but also a lot of them prove to be quite beneficial for some specific day-to-day situations faced by users.
A lot of these features are easily accessible through the developer options and are quite helpful. But, it is not always clear for the users so as to use and select which option to meet their requirment. The users remain confused and in constant doubts whether you could break your smartphone or tablet by unknowingly enabling some of the dangerous issues for your device. In this article, we will be discussing all about the developer options and you will then be aware of what kind of settings you need to use and when so as to make the right kind of choice to meet your requirements
Developer options: How to access them and what are they?
Android developer options are basically hidden by default on your device so in order to access or see them, you need to enable them in order to browse through the available settings. It all depends upon what android version are you are using and also some specific device manufacturers like Samsung move around where most menus or settings options are found.
Firstly, you need to find there is the Build number in the settings app of your respective device. Normally, you can easily find it by opening the settings app of your device and then following the steps listed below:-
- Go to ‘About Phone’ in your settings app.
- Then find the Build Number.
- Note that Android 8.0 and Android 8.1 have located it already under the ‘system’ option.
- Now click on ‘about phone’ and then on ‘build number’.
- In case, you own a tablet then the option that you would see is ‘about tablet’ instead of ‘about phone’.
- This location is specifically customized according to different build of android as some samsung devices have it under the ‘about phone’ option or the ‘about tablet’ option.
- Then you need to click on software information and then select the build number.
If you cannot find it then there are high chances that your device might have a customely build version of android which is designed to move to a place where the settings are located. So, if the settings app on your device has a search bar which is usually found on the top of your screen, symbolized with a magnifying glass icon. You can select it and search for ‘builder number’. If you see it then click on it and then it would be highlighted on the about page and it would be displayed in front of you.
When you reach the build number entry, you need to keep on clicking on the builder number until a confirmation message pops up on your screen. Some devices just enable the developer options in a blink with phones and tablets whereas some new versions of android would need you to unlock the app using the lockscreen password that you had set for your device, in order to get confirmation. You would see a dialog box that says “You are now a developer” when you are completely done with the process.
The second step after you are done with the process mentioned above is that you will now see a developer options menu available in your settings app. Once again, the location of developer options on your device which is quite the exact location menu totally rely on what version of android you are using and what kind of device manufacturer you possess. Recently, some of the devices such as samsung mobile phones and tablets keep the developer options near the bottom area of the main settings screen and some devices keep it in a system menu or some other location. So, if you have a search button in your settings app then you can click on it and then type “developer options” in order to locate the menu.
Settings under the developer options
Now, in this portion of this article, we will be discussing all the options under the android developer options menu and what are they designed for every device. Different options may vary differently in terms of their functions depending on different types of devices and also some manufacturers add some of their own specialized options would be covered in this portion of the article. Please note that this list is based on Android 12L/12.1 and so future versions of android could remove or even add some more options or could even alter the existing ones. Below are all the android developer settings options discussed in detail.
The memory option opened a new window on your device which tells you how much RAM (Random Acesss Memory) is currently being used by your device. It would take averages based on intervals of 6 hours, 12 hours, or even 1 day. You will be able to see a list of apps on your device which are sorted and distinguished by how much memory they would use on a regular basis. In case, you notice that your device is loading the apps again and often switching between the apps then it would be best to check the screen and search for that particular app or apps that might be acting differently or performing weirdly.
This option is designed in such a way so as to create a bug report for the Android system and please note that google might ask you for a bug report in case you decide to bug your files with some core system components or android itself.
Bug report handler
This option is where the change of the application that is handling the bug report happens, on your respective device. There are not many popular reasons why you would want to change this so it is suggested that the best thing is to let it be the way it is.
Desktop Backup Password
This option is meant to create a backup password to make use of the adb commands in order to back up and restore the device’s data and apps.
This is a toggle option and if you choose to enable it then it would prevent your device from sleeping ( when the screen turns off) while you have plugged in your device for charging. For testing apps, this feature is a blessing indeed! This feature could also come in use during other tasks where you are not supposed to unlock your mobile phone or whichever device you are using again and again.
Enable Bluetooth HCl snoop log
This option is designed to save all the Bluetooth HCl packets to some file which is stored at /sdcard/btsnoop_hci.log. It can be opened with a tool such as Wireshank which could be used to analyze and understand in order to troubleshoot the data of Bluetooth.
This toggle option is needed to be enabled bu you when you are in the process of unlocking the bootloader. In case, it is not the solely the only step for unlocking the bootloader then you should know that this option would not be found on every device that you come across.
This option opens a screen that shows you all the system processes and applications that are running on your device, currently. It also displays how much memory is being used by each application or process. It is quite similar to the options mentioned above, especially the memory screen. This option could be considered more helpful when you wish to check the exact current state of your respective device.
Picture color mode
This option switches your device into using the sRGB color space which could only be used to prove to be helpful in times when most devices were or are used by sRGB by default. Today, this switch does not really have any effect on the devices.
This option has the ability to change the application which is currently responsible for rendering the embedded web content in android apps to some other app. It is advised that you should not touch this option unless you need a good reason to do so. This is advised as you cannot end up losing your entire personal important data.
Automatic system updates
If you turn this option off then it would prevent your device from applying system updates when you are in the process of restarting your device in case an update has been downloaded, already. There are some devices that could ovveride the nature of this app or even toggle somewhere else in order to know and show how all the system updates are handled.
This option was initially introduces in Android 11 and it allows you to temporarily boot into a Generic System Image.
System UI Demo Mode
This option is a demo mode which is mostly focused on how to capture clear screenshots without any other details that are distracting. It happens to show the clock at 12:00 and the battery level at 100% and also hides all the existing notification icons.
Disable ADB authorization timeout
This option is mostly revoking in most devices. They revoke authorizations after they have not been used for more than seven days which is important as a security measure. This toffle is responsible for turning that feature off and you definitely should not use it unless there is a very good reason that you should.
Bug report shortcut
This feature adds a new option present in the power menu which is responsible for creating a bug report.
Enable verbose vendor logging
This option includes information regarding the bug reports which could mainly include the private information.
Enable view attribute inspection
This option allows you to look into the views in applications with the help of the layout inspector which is present in Android Studio. This option can surely come in handy while you are developing apps.
Select debug app or wait for debugger
We know that the normal bug would report and the fact that debuggist does not always help as it is not everytime that it provides us with all the information we need while we develop a particular app. Most importantly, this becomes an issue when we take into consideration the app crashes that happen at startup. This option is designed in such a way that it allows you tos choose a debugger application of your choice that could be used as a startup before a given application and it should be configured with the option that says “wait for debugger”.
Verify apps over USB
This option checks the applications that are basically sideloaded with the help of ADB due to come harmful or suspicious code. It is quite similar to how applications that are already downloaded on your device are firstly verifies with the help of Google Play Protect. This might come handy in case you choose to download some apps from through the web on your PC and then with the help of ADB, you install them.
Verify bytecode of debuggable apps
This option is also used as a security measure and you should know that it is enabled by default on your respective device.
Logger buffer size
This option is made to change the maximum size of files that are made for the logger (also called as “logcat”). You should know that a longer buffer can easily display older activity infront of you but a shorter buffer would only show you the most recent logs of the activity done by you.
At times, google includes some experimental features under the list of features of the android developer previews and betas. This is the place where those features are located. It is important to know that mostly all the devices run a stable version of Android and consists of an empty Feature flags menu.
The GPU debug layers to be enabled
This option allows Vulkan validation layes to get loaded from the respective local device storage. Google has a bunch of documentation which is more important. Google contains some documentation along with more information.
Graphics Driver Preferences
This basically allows you to override your system graphics for some particular applications with the help of a different driver. In most cases, devices do not seem to have any other option when it comes to a graphics driver.
App Compatibility Changes
This option is in the form of a menu that allows the users to test each and every API individually, with respect to its change in the current version of the android used by you as compared to the older verison and this proves to be very helpful for the entire development process of updating an application. Note that it only words for the apps that are debuggable so it might not be much useful outside the software development.
Show Refresh rate
This option adds a fraps-like counter which is present at the top of the screen and is meant dor checking the current refresh rate. It is very helpful and important for those devices which often dynamically switch between refresh rates. You need to make sure that you know that this is not a frame rate counter.
Allow screen overlays on settings
Now, we are seeing that the modern versions of Android that are present in the market do not allow overlays to run while you have opened the settings app on you device. This is done to prevent possible risks to security.
This option has proved to be of extreme use and help for the better performance and optimization of the device during the process of app development.
Wireless display certification
Under this setting, you will be able to cast the screen of your device to the screen of some other TV or monitor that happens to support Miracast. You should know that Google ripped out he code for it many year ago in order to prompt its own casting software known as chromecast standard. As a conclusion, this option does not really do anything on most devices.
Enable Wi-Fi verbose logging
This option displays the strength of the signals received on the indicator or the RSSI to keep it short on every network in the Wi-Fi settings. The RSSI value has the ability to tell you that the strength of a provided Wi-Fi signal but you should know that some apps such as WiFi Analyzer are much better tool for the job than this.
Wi-Fi safe mode
This option is available to you on some devices only. It gives priority to network stability over performance.
Wi-Fi scan Throttling
This option limits how you ccan sca your device for Wi-Fi network and it could reduce battery drain at times and it also means that it could take longer for your respective device to connect to any desired selected network.
Wi-Fi non-persistent MAC randomization/Enhanced Wi-Fi MAC randomization
The people who have an android device either make use of the persistent MAC randomization or the non-persistent MAC randomization when it comes to connect to a Wi-Fi network, or the feature depends upon the kind of requirement that you have at the moment. This option makes your android device to always choose the the non-perisitent MAC randomization which is in turn meant to trick the the network to think that you now have a new device memory each time you connect with it. The networks that have configuration issues, would be more useful with capacitive logins.
Mobile data always active
Android happens to turn off your mobile data connection when your device is not connected to Wi-Fi and the reason for this is that keeping both the things i.e. Wi-Fi and data on could lead to very fast battery drainage. This option basically turns this behaviour in the opposite manner and it would be very helpful for you if you do not wish to wait for a 5G or LTE network to reconnect when you disconnect from your Wi-Fi. Please keep in mind that this could reduce your battery life to a great extent.
Tethering hardware acceleration
This option is set to ‘on’ by default and it is responsible for improving tethering connections along with some special hardware features. You should not alter this option unless required.
Default USB configuration
This option changes in whatever mode it currently is the moment you plug in your device into a PC or some USB host of other kind. By default, “no data transfer” option is set to most devices and in case you constantly are transferring your files through USB then you should choose “File transfer” in order to prevent selecting it every time. Please note that this setting is only applicable when youh have unlocked your device.
Show Bluetooth devices with no names
Android devices mostly do not display those bluetooth devices which do not have a name or a title but note that this setting only displays those bluetooth devices along with their MAC addresses with all the other Bluetooth devices.
Disable complete volume
Those versions of android which are said to be modern versions of Android support the absolute volume for Bluetooth outputs that normally give out most control which is ever possible over volume. But, some headphones and some headsets could be enables with the help of this. You can turn this on as this might be of extreme use in times of help when speakers or headphones do not seem enough to meet your needs.
This features enables the new Bluetooth stack that google started working on in the android 11 which is known as Gabeldorsche, which is basically a reference to the history of Denmark. There is absolutely no reason why everyone should use this feature instantly. Also, it is hidden on many devices.
Disable Bluetooth A2DP hardware offload
This feature changes the way in which bluetooth audio is transferred and transmitted. This feature can also fix some bugs related to bluetooth headphones and speakers.
Bluetooth AVRCP Version/Bluetooth MAP version
These features are meant to change how android handles media and takes control over all using bluetooth. You do not need to change or alter these settings.
This feature is turned on by default and it basically turns o bluetooth audio with lower-quality SBC codec to a better quality codec. In case, you do not find better codecs available or you do not have a bluetooth audio device connected anywhere then you can ignore this setting.
Bluetooth Audio Codec
This is a feature that shows on every audio codec which is supported by an android device. It is displayed when you have a bluetooth device connected and the current displayed options are not supported by your speakers or headphones. There is no need or reason to change the audio codec in this case but this particular feature is a better way to instantly cross check with codecs, with which a bluetooth device works.
Bluetooth Audio Sample rate/Buts Per Sample
This feature is made to change some of the best settings for your bluetooth audio for better performance. You do not need to change these settings or alter it as they are already set.
Bluetooth Audio Channel Mode
This feature changes and switches the mono or stereo settings of your bluetooth device whenever needed. But, you should know that wth codec selector, you can only choose from the modes that are supported by the respective device.
Maximum connected Bluetooth audio devices
.Some devices have the ability to connect to more than one bluetooth devices at once and the default number of devices than can be connected are already set to the maximum limit so you cannot change or alter anything in this feature.
This feature creates a dot on the display screen when you are working and continuously working on it. This feature is really helpful during screen recording to indicate where you are pointing on the screen. Some devices already have this option and it gets enabled automatically during screen recording.
This feature is very similar to ‘show taps’ but the only difference is that it locates the exact coordinated of you tap at the top portion of your screen.
Show surface updates
This flashes the entire screen when anything changes in the current app’s state. This can be useful for debugging apps but you are free to not use this app, unless needed.
Show layout bounds
This feature shows a grid on all the elements such that it becomes easy to look at the margin areas on some selected elements. Also, this is helpful when you are developing apps.
Force RTL layout direction
This feature forces all the existing texts to be now shown from right to left and it does not matter if the current language is being written from left to right. This option is helpful for testing apps or how would they look in different languages such as Arabic, without really changing the device language.
RTL Layout direction
Windoe animation scale or transition animation scale or animator duration scale
These features can be used to change the speed of animations on your android device. You can set themt o values such as 0.5x and you can make your device’s performance faster.
Simulate secondary displays
This feature makes the monitor that is connected to your device, to be displayed on the top screen. It is very helpful when you are testing apps which respond to external displays.
Smallest width/Minimum width
This is an another way to alter the scaling for apps on your android device where the smaller value increases its size and a higher value makes all the things smaller. The display size is set to normal and is actually the best way to change the scaling of the screen. This setting could either go smaller or larger. In case, your android has 12L/12.1 or later then if you set this feature to higher settings, then it would be beneficial to you.
This feature is when you can make your notch, camera hole or any other cutouts of your choice on the screen of your device. In case, your device already has a cutout then just click on ‘hide’ option in order to keep the status bar invisible to you.
Short view updates
These settings are quite same as the ones mentioned above in this article such as the ‘show surface updates’ settings. There is no need to interface with these settings too unless you are testing an app as a developer.
Debug GPU overdraw
This feature makes use of color coding to visualize the number of times when the same pixel has been dawn in the same amount of time. The visualization hence obtained can be used where an app could do wrong during the process of rendering.
Debug non-rectangular clip operations
This turns the clipping area present on the canvas to turn off in order to create an irregular non-rectangular canvas area.
This setting was addes in android 10 and it was meant to make the apps force stop in order to give them a dark theme even if they do not have one. In case, it does not work on each and every application then there are chances that it might be less dependent then. Normally, all the android apps possess a native dark mode so as a conclusion, it is not really important or crucial.
Force 4x MSAA
This feature forces multisample anti-aliasing (MSAA) in almost all the apps with the help of OpenGL ES 2.0.
Disable HW overlays
Hardware often overlays apps which are meant to display those things on the screen that require comparatively less processing power. Without any overlay, the apps share the video memory adn need to constantly check for possible collision and clipping in order to render a clear proper image. You do not need to alter or disturb the settings of this feature much, unless it is really needed.
Simulate color space
This feature can change display colors among a few available modes (also the monochrome option).
Disable USB Audio Routing
This feature protects android from using any new connected US audio device like headphone adapter or USB headsets. It should be quite helpful in case you wish to plug in a device which gives you an audio output but do not wish to use the audio part as a whole. If we take an example we can take an example of a USB dock or an adapter with a 3.5 mm headphone jack amidst a number of ports that it has.
Media transcoding settings
This menu is meant to show options that could change the way the device loads media files. You do not need to interfere with these settings much.
Under this setting, all the options that you would find are basically for testing the autofull framework of Android and there is absolutely no reason to change any of the present options here unless you are in the process of testing an app which makes use of the Autofull data.
This only consist of a single option which is to show any kind of shared data in the android system and mostly everytime this would be left empty with a message that says “there is no shared data for this user”.
This option helps you to use the ‘select mock location app’ with other apps like GPS Joystick in order to spoof the physical location of your device.
Strict mode enabled
This option is a must for developers as it helps them to monitor any accidental storage on the application’s thread.
Profile HWUI rendering
This is a way to keep track of your GPU activity on the device but it is not very helpful apart from testing applications during development.
Don’t keep activities
This will intentionally disable applications just when they move to the background and the most essential ones out of them, swipe out of the Recents screen. There’s no reason to use this unless you’re testing an app and need to reload it constantly for testing.
Background process limit
This changes the highest number of applications that are kept in background memory before they are cleared.
Always show crash dialog
Pretty self-explanatory, this will show a popup message whenever an application crashes for easy bug reporting.
Show background ANRs
Enabling this will show ‘App not responding’ messages for apps running in the background, in addition to the default behavior of showing them for frozen apps open on your screen.
Suspend execution for cached apps
Android applications aren’t supposed to run when they are cached in memory, but this option completely prevents them from doing so. This option can improve battery life at the cost of performance (it might longer for cached apps to be restored when opened again), but real-life results are mixed.
Show notification channel warnings
Most Android apps sort their notifications into categories, which can be turned on or off individually from the Android settings. Enabling this option shows a warning when an app sends a notification that isn’t assigned to a category. This is mainly helpful for developers to make sure all their notifications are in a category — if you’re trying to find out which channel a notification came from, just press and hold on it from the notifications panel.
Reset notification importance
Android attempts to sort your notifications over time by importance, and tapping this button resets that behavior.
This lists all the applications currently on standby on your device.
Force allow apps on external
Android apps can choose whether or not they can be installed on external storage (usually the microSD card slot) with a manifest setting, but this option overrides that. Changing this and moving unsupported apps to external storage could cause strange behaviors, so it’s probably best to leave this alone.
Force activities to be resizable
This option forces all applications to be resizable, which can be a (buggy) fix for apps that don’t work in split-screen mode or can’t be resized on Chromebooks.
Enable freeform windows
This option allows applications to open in floating windows, even if the device wasn’t intended for freeform mode (like most phones). Once you enable this, hold down on an app’s icon in the Recents screen and select ‘Freeform’ to turn it into a floating window. Some custom versions of Android have a custom implementation of this already, like ‘Pop-up View’ on Samsung Galaxy phones and tablets.
Force desktop mode
In case you have connected to an external display
Force desktop mode
If you connect an external display (for example, a monitor over USB Type-C), this will force it to use a simplistic desktop interface with freeform windows and a custom launcher. The exact implementation of this varies by the Android skin and version, and some devices have their own behavior that overrides this option.
Enable non-resizable in multi-window/Multi-window for all apps
This allows applications not built for resizing (like many games) to be used in multi-window mode.
Reset ShortcutManager rate-limiting
Android limits how many times an app can update its shortcuts on the home screen and other system locations to prevent performance slowdowns. This option resets the rate-limiting timer, which is mainly just useful for development.
What Is Android Developer Mode, and Who Needs It?
Developer mode is basically designed for the android developers who are at their primary stage. It discloses a lot of options and settings which are needed by developers to test some new or existing apps. The users who fall under the category of ‘average’ should not have any need to access any of these options and this is the exact reason why the mode is turned off by default.
Now that you know that even though developer mode is for developers, it is not really just for them as it is equipped with a lot of different uses beyond testing apps. You can enable the developer option in order to give access to apps like screen recorder. It also exposes settings in order to change or alter speeds of animation. It also helps to boost performance and it is quite necessary for rooting your phone or even installing a custom operating system.
If you see something called ‘spoofing your GPS location’ or any other such apps, then too you would need developer mode on. In case, you wish to spoof your GPS in some game then you surely need to turn the developer mode on.
If you choose to install an app and it asks you to enable developer mode then you need to decide whether you wish to not use the app anymore or simply activate the developer mode. Just before you move on any further, you need to make sure that you have downloaded the app from a genuine site and that the app is not malicious to the system or device.
How to Enable Android Developer Mode
If you wish to enable the developer mode on Android then you should know that it is a pretty easy and direct process. You just need to look for where the menu is so that you could see the build number of your mobile phone is displayed. Then, you need to just click on the build number until your developer mode gets activated. Note that this is a completely reversible process and so you can disable the developer mode whenever required. You can follow the steps given below in order to turn the Android developer mode on:-
- Go to settings.
- Click on ‘about phone’.
- Please note that these steps are for phone running stock Android and those versions of android that are modified, you need to follow these steps:-
- Go to settings.
- Click on ‘about device’ or settings and then click on ‘about’.
- Click on ‘software information’.
- Now scroll down until you locate the builder number section.
- Now select the build number until you see a displayed message that says that ‘you are now a developer’.
- You will not be receiving any feedback as such after you tap it a few times. You need to keep tapping on it and then you would see a message that says ‘You are now _ steps away from becoming a developer’.
- Before jumping to the final step, you need to enter your PIN as you will be asked for the same.
- Just when you would see the message that says that ‘you are now a developer’, it would mean that you have now completely turned on the developer mode. In case, you were attempting to install or utilize an app which demands for the use of developer mode then you can now go back to that app and you will find that now you will have a complete access over that respective app and you would also be able to avail all the developer options.
How to Access Developer Mode options in Android
In most cases that you would come across, the developer mode is not enough. For example, if you are trying to access your GPS, then you are required to make some more changes in the developer options menu just after you have enabled the developer mode already. You can also make use of the developer options from the menu that would be displayed on your device.
In.case, there is an app that demands developer mode only and it is also an app from a trusted source, then it is safe to turn on developer mode. Please note, that if you activate and change/alter any of the developer options then you would not be able to understand what are you exactly doing and it can result in unwanted issues. You should only make use of the developer options menu in case you know that what you are doing or going for. You can also follow the instructions that an app provides:-
- Go to settings and click on ‘developer options’.
- When the developer options opens, you will have access to information regarding your phone which you usually do not see.
- You can also activate and use a lot of advanced and new options.
How to Disable Developer Mode on Android
You can very well leave the developer mode on without any worries in case you are not using it. But, even if you choose to keep it enabled then you can disable it later from the developer options menu available. Please follow the steps below to do so:-
- Go to settings
- Click on ‘developer options’.
- Click on the “On” toggle which is present at the top portion of the screen of developer options and it will turn off then.
In this article, we read about what is the developer mode of android and how does it work. We also saw a lot of developer options and you can read all of them step by step in order to know all about them properly. We also read about when should you enable the developer mode and when should you disable it. Hope this article proved to be of great help to you!
Frequently Asked Questions
It depends from app to app and system to system whether there is a need to turn the developer mode on or off. In case, an app has made it clear that you would only get full access to it if you enable developer mode then you can either do it or simply exit the app.
Please go through our complete guide on ‘android developer options’ in order to get answers to your questions immediately and in detai. You will also learn a lot more about android developer options.
There are a lot of developer options that are available to us under developer mode. In this article, we have discussed and explained each and every option in detail. We have covered almost every option so you can go through this article in order to learn about all the developer options properly.