I love Android devices because they are typically very capable. However, having so much functionality on one device often means that specific functions, apps, or routines won’t work precisely the way you want. It takes a good knowledge of code to programmatically make some of these elements work just as you wish.
Since not everyone has the technical ability, time, or resources, using MacroDroid is one of the best ways to create perfect phone automations without coding. It’s among the first apps I install on every Android device. People use it for various automations, but I’ve found the three most essential uses for this app. These are non-niche-specific automations everyone will benefit from.
The polite ringer
Dynamic volume based on context
When you leave your phone on ring, it often rings at the worst possible moments. It rings too loudly in places where silence is expected, like meetings, libraries, or shared workspaces. Even at home, a full-volume ringtone can be unnecessary if the phone is already in your hand or right next to you, turning an incoming call into a jump scare.
With MacroDroid, I use dynamic volumes based on context. This instantly takes away the mental load of “did I forget to lower my volume?” You also become free from manually managing your phone’s behavior. This is how I set up dynamic volumes with MacroDroid:
- Tap on the Macros menu, then tap the + icon.
- Long-press the + icon for Triggers, and select Call Incoming. (If prompted, allow MacroDroid access to your phone call log)
- Select Any Number, and hit OK.
- Long-press the + icon for Actions and select If clause.
- Select the + icon for Condition, tap Sensor, select Proximity Sensor, and choose Near (Repeat this step to add as many conditions as needed).
- Within the If clause, you should add an Action. Tap the End if option, select Action, then choose Configure Ringtone. Reduce the volume, select silent, or choose any other settings you need, then save the macro.
This setup differs from setting your phone to Do Not Disturb (DND). DND blocks calls and notifications; this macro adjusts ringtone volume based on context. When your phone needs to ring, it does. It becomes subtle when it has to be, and the phone feels generally more considerate.
Smart orientation
Auto-rotate only when it actually makes sense
Auto-rotate is one of the features I use most on my mobile devices; however, it’s also one of the most annoying because of its poor implementation. I may be scrolling through X posts in bed, then suddenly click on a video, and because my phone is slightly tilted, the footage changes orientation. These accidental flips break focus, and they’re also bad for one-handed scrolling.
An easy solution is to turn off auto-rotate. But this means you won’t have the feature available when you need it, unless you manually turn it back on. It’s simply too much friction to turn it off and on several times a day manually. Because I know that maps, photos, and videos are the main times I need landscape mode, I can configure an auto-orientation change for those apps. This is how I do it:
- Tap on the Macros menu, then tap the + icon.
- Tap the + icon for Triggers, and select Application Launched/Closed.
- Choose Application Launched, tap OK, then pick the apps that should trigger the automation and confirm.
- Long-press the + icon for Actions and select If clause.
- Select the + icon for Condition, tap Device State, then select Auto Rotate, select Enabled, and tap OK.
- Again, select the + icon for Condition, tap Sensors, then choose Device Orientation, select Landscape, and tap OK.
You may add constraints and other conditions based on your specific needs, but this is the best workaround for auto-rotate on your phone. This way, the phone’s orientation stays locked most of the time and auto-switches to landscape only when needed. This fixes a major implementation flaw in Android: the single toggle for orientation and the lack of consistent app-level control. Implementing this automation makes me stop noticing rotation entirely, and that’s how I know it’s effective.
Pocket accidental-touch protection
Avoid unintentional phone lockout
Something I have experienced quite a bit is getting locked out of my phone when it’s in my pocket. It happens when I leave my phone in my pocket for an extended period and, due to random movement, accidental unlock attempts lock me out for 10 minutes or worse.
I use MacroDroid to avoid this frustrating situation. Its proximity sensor trigger lets me create a kill switch that keeps the screen off when the phone is in a pocket or otherwise covered. Here is how I do it:
- Tap on the Macros menu, then tap the + icon.
- Tap the + icon for Triggers, select Sensors, then choose Proximity Sensor, select Near, and tap OK.
- Tap the + icon for Actions, select Screen, then choose ScreenOn/Off, select Screen Off, and tap OK.
Now, you will no longer have any accidental phone lockouts as long as the phone is close to you.
My old Android was laggy until I toggled this setting
I thought I needed a new phone—this tweak saved it.
Automation that works the way I already think
I’ve used several automation tools. I’ve spent several hours automating daily tasks, even on my PC. But of all the tools I’ve tried, MacroDroid is one of the easiest solutions.
You only need an idea of what you want to achieve, and by walking your way through MacroDroid’s triggers and actions, you’ll be surprised how easy it is to achieve even complex automations.