[!NOTE]
We are releasing it on the Google Play Store and need your help with the 14-day closed testing. See: https://github.com/aj3423/SpamBlocker/issues/664
Android Call/SMS blocker. (Android 10+)
| History | Settings | Notification |
|---|---|---|
It works without replacing your call/SMS app. You can kill the app after setup, it doesn't need to stay running in the background.
It's a Caller ID app.
The app takes over SMS notifications, you need to disable notifications from the SMS app to avoid duplicates.
| App | Send/Receive SMS | Show Notifications | Message Logs | The Point |
|---|---|---|---|---|
| SpamBlocker | ❌ | ✅️ Takes over notifications | Received messages only, no sent messages | Avoid interruptions |
| SMS apps | ✅️ | ❌ Must be manually disabled | All messages (remain undeleted, including spam texts) | Messaging |
Similar to call screening, the app can work as a service. The SMS app asks it to check messages in real time, this app simply replies "block" or "allow". It only works with SMS apps that support this SMS screening protocol. Currently, this is not supported by any SMS app :)
| Filter | It checks |
|---|---|
| Contacts | From a contact? |
| Contact Group | From a contact group? |
| Contact Prefix | Matches prefix of an existing contact? Use case: save one clinic number xxxx22 to allow its full range xxxx11-xxxx99 |
| STIR/SHAKEN | Fails STIR/SHAKEN attestation? |
| Repeated Calls | Multiple calls from the same number in a short while? |
| Dialed Number | Have you dialed the number? |
| Answered Number | Allow previously answered numbers |
| Emergency | Allow calls for a while after dialing an emergency number(e.g. 911) |
| Push Alert | Allow calls after receiving notifications from other apps, e.g.: "Your order has been taken by driver ...", the driver may then contact you. |
| SMS Alert | Allow calls after receiving SMS messages like: "[From ...] We are calling to inform ..., please feel free to answer." |
| SMS Bomb | Block continuous OTP message floods |
| Recent Apps | Allow calls if some apps have been used recently. Use case: You ordered Pizza online and soon they call you to refund. |
| Meeting Mode | Decline calls during online video meetings. |
| Off Time | A time period that always allows calls, usually no spams at night. |
| Spam Database | Block numbers in the spam database. Any downloadable spam databases can be integrated, such as the FTC-DNC registry. |
| Local AI Training | Train your own spam SMS filter |
| Schedule & Calendar | Auto adjust rules based on time schedule and calendar events |
| Geolocation & Carrier | Block numbers based on geolocation or carrier name |
| Instant Query | Check the incoming number online in real time, querying multiple API endpoints simultaneously, such as the PhoneBlock. |
| Report Spam | Automatically or manually report the number to build our crowd-sourced databases, protecting others and yourself. |
| Regex (regular expression) | Check the Wiki for examples. |
| Permission (all optional) | Why |
|---|---|
| INTERNET | For database downloading / instant query / number reporting |
| ANSWER_PHONE_CALLS | Reject, answer and hang-up calls |
| POST_NOTIFICATIONS | Show notifications |
| READ_CONTACTS | Match contacts |
| RECEIVE_SMS / RECEIVE_MMS | For SMS notification screening |
| SEND_SMS | For auto replying to blocked contacts |
| READ_CALL_LOG | For allowing repeated calls |
| READ_SMS | For training local AI |
| READ_CALENDAR | For dynamically adjusting rules based on calendar events |
| PACKAGE_USAGE_STATS | For feature: Recent Apps (check whether an app has been used recently) |
| READ_PHONE_STATE | For BlockMode: Answer+Hang-up (monitor ringing state) |
| REQUEST_IGNORE_BATTERY_OPTIMIZATIONS | For it to keep working after being swiped and killed |
| NOTIFICATION_ACCESS | For feature: Push Alert (receiving notifications from other apps) |
| WRITE_SETTINGS | For customizing call ringtone |
| READ_LOG | For reporting bugs with logcat messages |
| SYSTEM_ALERT_WINDOW | For the caller ID floating window |
| SCHEDULE_EXACT_ALARM | For repeating important notifications |
For offline features
No data collection.
For online features:
The API server will see your:
Nothing else.
Reproducible apk
Apk signing signature:
apksigner verify --print-certs SpamBlocker.apk
7b1ce727856f3427eab1fadfad6c9730cd4e6ba201661547f009206377dffb58
Languages are translated using AI, PRs for corrections are welcome.
(new ideas are welcome)
80 followers · starred Jul 2024
945 followers · starred Nov 2024
452 followers · starred Mar 2026
233 followers · starred Jun 2024
[!NOTE]
We are releasing it on the Google Play Store and need your help with the 14-day closed testing. See: https://github.com/aj3423/SpamBlocker/issues/664
Android Call/SMS blocker. (Android 10+)
| History | Settings | Notification |
|---|---|---|
It works without replacing your call/SMS app. You can kill the app after setup, it doesn't need to stay running in the background.
It's a Caller ID app.
The app takes over SMS notifications, you need to disable notifications from the SMS app to avoid duplicates.
| App | Send/Receive SMS | Show Notifications | Message Logs | The Point |
|---|---|---|---|---|
| SpamBlocker | ❌ | ✅️ Takes over notifications | Received messages only, no sent messages | Avoid interruptions |
| SMS apps | ✅️ | ❌ Must be manually disabled | All messages (remain undeleted, including spam texts) | Messaging |
Similar to call screening, the app can work as a service. The SMS app asks it to check messages in real time, this app simply replies "block" or "allow". It only works with SMS apps that support this SMS screening protocol. Currently, this is not supported by any SMS app :)
| Filter | It checks |
|---|---|
| Contacts | From a contact? |
| Contact Group | From a contact group? |
| Contact Prefix | Matches prefix of an existing contact? Use case: save one clinic number xxxx22 to allow its full range xxxx11-xxxx99 |
| STIR/SHAKEN | Fails STIR/SHAKEN attestation? |
| Repeated Calls | Multiple calls from the same number in a short while? |
| Dialed Number | Have you dialed the number? |
| Answered Number | Allow previously answered numbers |
| Emergency | Allow calls for a while after dialing an emergency number(e.g. 911) |
| Push Alert | Allow calls after receiving notifications from other apps, e.g.: "Your order has been taken by driver ...", the driver may then contact you. |
| SMS Alert | Allow calls after receiving SMS messages like: "[From ...] We are calling to inform ..., please feel free to answer." |
| SMS Bomb | Block continuous OTP message floods |
| Recent Apps | Allow calls if some apps have been used recently. Use case: You ordered Pizza online and soon they call you to refund. |
| Meeting Mode | Decline calls during online video meetings. |
| Off Time | A time period that always allows calls, usually no spams at night. |
| Spam Database | Block numbers in the spam database. Any downloadable spam databases can be integrated, such as the FTC-DNC registry. |
| Local AI Training | Train your own spam SMS filter |
| Schedule & Calendar | Auto adjust rules based on time schedule and calendar events |
| Geolocation & Carrier | Block numbers based on geolocation or carrier name |
| Instant Query | Check the incoming number online in real time, querying multiple API endpoints simultaneously, such as the PhoneBlock. |
| Report Spam | Automatically or manually report the number to build our crowd-sourced databases, protecting others and yourself. |
| Regex (regular expression) | Check the Wiki for examples. |
| Permission (all optional) | Why |
|---|---|
| INTERNET | For database downloading / instant query / number reporting |
| ANSWER_PHONE_CALLS | Reject, answer and hang-up calls |
| POST_NOTIFICATIONS | Show notifications |
| READ_CONTACTS | Match contacts |
| RECEIVE_SMS / RECEIVE_MMS | For SMS notification screening |
| SEND_SMS | For auto replying to blocked contacts |
| READ_CALL_LOG | For allowing repeated calls |
| READ_SMS | For training local AI |
| READ_CALENDAR | For dynamically adjusting rules based on calendar events |
| PACKAGE_USAGE_STATS | For feature: Recent Apps (check whether an app has been used recently) |
| READ_PHONE_STATE | For BlockMode: Answer+Hang-up (monitor ringing state) |
| REQUEST_IGNORE_BATTERY_OPTIMIZATIONS | For it to keep working after being swiped and killed |
| NOTIFICATION_ACCESS | For feature: Push Alert (receiving notifications from other apps) |
| WRITE_SETTINGS | For customizing call ringtone |
| READ_LOG | For reporting bugs with logcat messages |
| SYSTEM_ALERT_WINDOW | For the caller ID floating window |
| SCHEDULE_EXACT_ALARM | For repeating important notifications |
For offline features
No data collection.
For online features:
The API server will see your:
Nothing else.
Reproducible apk
Apk signing signature:
apksigner verify --print-certs SpamBlocker.apk
7b1ce727856f3427eab1fadfad6c9730cd4e6ba201661547f009206377dffb58
Languages are translated using AI, PRs for corrections are welcome.
(new ideas are welcome)
80 followers · starred Jul 2024
945 followers · starred Nov 2024
452 followers · starred Mar 2026
233 followers · starred Jun 2024