A pattern-based text message blocker for Android.
No reason in particular. I wanted a name that had "SMS" in it, and "neko" was the first word that popped into my head. Hence, NekoSMS.
Starting from Android 4.4, only the default SMS app has the ability to intercept SMS messages. In order to bypass this restriction, code must be modified at the OS level.
READ_SMS
, WRITE_SMS
for obvious reasonsVIBRATE
for notificationsAs long as your ROM supports it, yes. There is no app-specific SMS blocking code, so if it works with one SMS app, it will work with them all.
It hooks the internal Android class, com.android.internal.telephony.InboundSmsHandler
.
This class is responsible for taking the raw SMS data received by the phone
and dispatching it to the default SMS app, then broadcasting it to all apps
capable of reading SMS messages.
Essentially, this app intercepts the data right before it is sent to the default SMS app, then runs it through the user-defined filters. If the message matches a blacklist rule, the broadcast is dropped.
Does this look like the face of evil to you?
The code is fully open source, so feel free to check for yourself! :-)
All code is licensed under GPLv3. Icons are from Google's material icons library.