DroidSMS is a Bash-based SMS automation tool built on top of ADB (Android Debug Bridge).
It demonstrates how to:
- Launch Android activities via intents
- Prefill SMS data
- Inspect UI hierarchy
- Extract clickable element bounds
- Inject tap events programmatically
- Automate SMS sending without root
This project is designed for educational, lab, and forensic environments.
- ✅ Automatic Send button detection (UI XML parsing)
- ✅ Manual coordinate fallback mode
- ✅ Persistent coordinate storage
- ✅ Works on non-rooted devices
- ✅ Compatible with physical devices and emulators
- ✅ Transparent, reproducible automation flow
DroidSMS does not bypass Android security.
Instead, it follows this structured flow:
Intent → UI Render → XML Dump → Coordinate Extraction → Tap Injection
- Launch SMS compose window using Android intent
- Dump the current UI hierarchy
- Locate the Send button
- Calculate its center coordinates
- Inject a tap event
- Optionally reset app state
This mirrors how UI automation frameworks operate internally.
sudo apt update && sudo apt install adb -y
adb --version- Settings → About Phone
- Tap Build Number 7 times
- Developer Options → Enable USB Debugging
adb deviceschmod +x smsSender.sh
./smsSender.shFollow the on-screen menu.
Want to understand how this works at a system level?
The script is simply a structured wrapper around the manual workflow.
- Device must be unlocked
- Android does not allow silent SMS sending via ADB
- This tool simulates UI interaction
- Intended for controlled lab environments
MIT License — feel free to fork, modify, and adapt for demos or educational content.
If DroidSMS helped you better understand Android or ADB, consider supporting continued development:
