An LSPosed/Xposed module that intercepts outgoing SMS messages and prepends customizable text.
- ✅ Universal Interception: Hooks all outgoing SMS across system and third-party apps
- ✅ Smart Appending: Prepends customizable text (default: "Hello")
- ✅ Multipart Support: Handles long messages correctly (modifies first part only)
- ✅ Idempotency: Prevents double-prefixing if message is processed twice
- ✅ Modern Android Support: Works on Android 8.0 through Android 14 (API 26-34)
- ✅ Secure: Fixed file permissions for Android 7+ (no
SecurityException) - ✅ Configurable: Toggle on/off and custom text via Settings UI
- Android 8.0+ (API 26)
- Rooted device with LSPosed Framework (Zygisk or Riru)
- LSPosed version 1.8.0+ recommended
- Build the APK or download from Releases
- Install the APK on your device
- Open LSPosed Manager
- Enable the module "SMS Hook"
- Select scope: System Framework, Phone, and any SMS apps
- Reboot device
- Open SMS Hook app to configure prefix text
- Open the SMS Hook app
- Toggle "Enable SMS Hook" on
- Set your desired prefix text (default: "Hello")
- Send an SMS - it will be prepended with your prefix!
git clone https://github.com/theGoodB0rg/sms-hook.git
cd sms-hook
./gradlew assembleDebugThe APK will be at app/build/outputs/apk/debug/app-debug.apk
app/
├── src/main/
│ ├── java/com/smshook/xposed/
│ │ ├── SmsHook.java # Core hooking logic
│ │ └── SettingsActivity.java # Configuration UI
│ ├── res/
│ │ ├── xml/preferences.xml # Preference definitions
│ │ └── values/ # Strings, colors, themes
│ └── assets/xposed_init # Xposed entry point
└── build.gradle
MIT License - See LICENSE for details