Android call blocker for French telemarketing numbers
Automatically filters incoming calls from ARCEP-designated telemarketing prefixes in France.
How it works • Prefixes • Install • Build • Francais
BLOCkTEL uses Android's CallScreeningService (Android 10+) to intercept every incoming call.
The phone number is normalized (handles +33 / 0033 / 0 formats) then matched against active prefixes.
If the number starts with a telemarketing prefix, the call is silently rejected: no ring, no notification.
Blocked calls remain visible in the system call log (deliberate choice for transparency).
- 17 pre-configured ARCEP prefixes (12 metropolitan + 5 overseas)
- Individual toggle per prefix
- Custom prefix support
- Blocked call counter (total + today)
- History of the last 200 blocked calls
- Zero external dependencies (only AndroidX / Material)
- No data collection, everything stays on device
The prefixes below are officially assigned by ARCEP (French telecom authority) to telemarketing in France. All are enabled by default.
| Prefix | Region |
|---|---|
| 01 62, 01 63 | Ile-de-France (Paris area) |
| 02 70, 02 71 | North-West |
| 03 77, 03 78 | North-East |
| 04 24, 04 25 | South-East |
| 05 68, 05 69 | South-West |
| 09 48, 09 49 | VoIP national |
| Prefix | Territory |
|---|---|
| 09 475 | Guadeloupe / Saint-Martin / Saint-Barthelemy |
| 09 476 | French Guiana |
| 09 477 | Martinique |
| 09 478, 09 479 | Reunion / Mayotte |
- Download the latest APK from the Releases page
- Install the APK on the phone (enable "Unknown sources" if needed)
- Open BLOCkTEL and grant the call screening permission
adb install blocktel-v1.0.0.apk# Clone the repository
git clone https://github.com/macaron-software/blocktel.git
cd blocktel
# Debug build
./gradlew assembleDebug
# Install on connected device
./gradlew installDebugRequirements: Android SDK, JDK 17+. Minimum: Android 10 (API 29). Target: Android 15 (API 35).
| Permission | Purpose |
|---|---|
BIND_SCREENING_SERVICE |
Allows the system to route incoming calls to the screening service |
READ_PHONE_STATE |
Read phone state |
READ_CALL_LOG |
Access call log |
RECEIVE_BOOT_COMPLETED |
Auto-restart after device reboot |
On first launch, Android will ask to authorize BLOCkTEL as a call screening service (CALL_SCREENING role).
com.macaron.blocktel/
BlockTelApp.kt Application (initialization)
CallBlockerService.kt CallScreeningService (blocking core)
NumberNormalizer.kt +33/0033/0 normalization
PrefixRepository.kt Rule storage (SharedPreferences)
BlockedCallLog.kt Blocked call history
BootReceiver.kt Restart after boot
MainActivity.kt User interface
ui/
PrefixAdapter.kt Prefix list with toggles
RecentCallsAdapter.kt Recent blocked calls
MIT - Macaron Software

