Android Call/SMS blocker. (Android 10+)
Call | SMS | Setting | Notification |
---|---|---|---|
It works without replacing your default call/SMS app.
💡 Please turn off the notification permission of the default SMS app in system settings, otherwise there will be double SMS notifications.
Filter | It checks |
---|---|
Contacts | Whether from a contact |
Contact Group | Whether it's a member of some contact group |
STIR/SHAKEN | STIR/SHAKEN attestation |
Repeated | Whether it's been calling repeatedly |
Dialed | Whether you have dialed the number |
Recent Apps | If some specific apps have been used recently, all calls are allowed. Use case: You ordered Pizza online and soon they call you to refund. |
In Meeting | Decline calls during online video meetings |
Off Time | A time period that always permits calls, usually no spams at night. |
Spam Database | If it matches any spam number in the database. Any public downloadable spam databases can be integrated, such as the DNC. |
Regex Pattern | Some typical patterns: - Any number: .* (the regex .* is equivalent to the wildcard * in other apps) - Exact number: 12345 - Starts with 400: 400.* - Ends with 123: .*123 - Shorter than 5: .{0,4} - Longer than 10: .{11,} - Unknown number (it's empty string): .{0} or ^$ - Contains "verification": .*verification.* - Contains any of the words: .*(police\|hospital\|verification).* - Starts with 400, with leading country code 11 or not: (?:11)?400.* - Extract verification code from SMS message: code.*?(\d+) Ask AI to generate or explain a regex: "Show me regex for checking if a string starts with 400 or 200" Results in (400\|200).* |
Permission (all optional) | Why |
---|---|
INTERNET | For downloading spam numbers from public databases |
MANAGE_EXTERNAL_STORAGE (Android 11+) READ/WRITE_EXTERNAL_STORAGE (Android 10) |
For file access from automated workflow |
ANSWER_PHONE_CALLS | Reject, Answer and Hang-up calls |
POST_NOTIFICATIONS | Show notifications |
READ_CONTACTS | For matching contacts |
RECEIVE_SMS | For receiving new messages |
READ_CALL_LOG READ_SMS |
For checking if a call is repeated |
PACKAGE_USAGE_STATS | For feature: Recent Apps For checking whether an app has been used recently |
READ_PHONE_STATE | For block mode: Answer + Hang-up (monitor ringing state) |
No data collection
Languages are translated using Gemini AI(golang script), fire an issue for requesting a new language support.
:heart: https://aj3423.github.io/donate