What is developer options?
Android provide some hidden features for developers to investigate certain things. This hidden features allow developer to have a better interaction with android OS. In another word, You can do a lot with Android from the device itself. But developers need more options. It would be a huge pain to manually move files between devices, run commands, and perform similar tasks all on the phone while developing. Instead, they use tools built into Android Studio and the Android SDK to streamline these processes.
How to enable developer options?
Settings β> About Phone β> Build Number β> Press 8 times
What I get if enable USB Debugging?
Enabling USB debugging grant us many options. For example:
- Bluetooth HCI Snoop Log
- If our application work with bluetooth we can log every single bit of data which is transferred. We can analysis this data via WireShark or similar tools.
- Select mock location app
- Android Mock Location is a feature that allows developers and other users to simulate location data for testing, geo-tagging, and other purposes. It enables apps to send mock location data to the Android location services, reporting that data to other apps and services as if it were real.
- Not supported for all applications. For example we canβt mock location for
GApps.
- USB-Debugging
- USB Debugging is a developer mode in Android phones that allows newly programmed apps to be copied via USB to the device for testing. It is a way for an Android device to communicate with the Android SDK (Software Developer Kit) over a USB connection. It allows an Android device to receive commands, files, and the like from the PC, and allows the PC to pull crucial information like log files from the Android.
- Showing Pointer Location
- Show us the coordinate of our touches on the screen.
- We use this coordinates to write short scripts to interact with applications and do some automations.
USB Debugging Features
Screen Share
if you want to share screen of your device to your computer. For this we can use scrcpy which used ADB to share screen.
# In macOS
brew install scrcpy
# In linux
apt update && apt install scrcpy
<aside>
π‘ In some device beside of enabling USB debugging you should allow file transfer tool
</aside>
Creating Macro via ADB
If you open adb shell command you will getting a shell from your phone. In this state enter input and press Enter key.

To click on a point for example click on a coordinate to open call app, you can do this:
input touchscreen tap [x] [y]