A powerful TrueCaller Clone Android application that detects incoming/outgoing calls, blocks spam/unwanted numbers, shows caller info in a floating popup, and notifies users of blocked or spam calls. Built using Android core components like Services, BroadcastReceivers, and CallScreeningService.
- Detect incoming and outgoing calls
- Block spam or unwanted calls based on settings
- Show caller information in a floating window
- Use Android's CallScreeningService for handling calls
- Store user preferences like block settings using
SharedPreferences - Notify users about blocked or spam calls
- Works even in the background
- App receives call event via
CallScreeningService. - Checks user preferences:
- Reject All → Call blocked.
- Reject Unknown → Block if contact is not saved.
- If spam filtering is enabled:
- Use
CallsControlHelperto verify spam. - If spam → Block + notify using
NotificationHelper. - If not spam → Show floating popup using
PopupService.
- Use
- If contact is unknown and setting is ON → Show floating window.
| Permission | Purpose |
|---|---|
READ_CALL_LOG |
To access call details |
CALL_SCREENING |
To screen incoming calls |
SYSTEM_ALERT_WINDOW |
To show floating caller info |
READ_CONTACTS |
To identify saved contacts |
FOREGROUND_SERVICE |
To run background call monitoring |
INTERNET |
For spam check and network calls |
- App launches, requests required permissions.
- Background services start to monitor calls.
- BroadcastReceivers detect call state changes.
- Caller info is retrieved and shown in popup.
- Spam data is fetched via helper classes.
- User can block, save, or ignore the number.
| Type | Role |
|---|---|
Activities |
Handle UI and permission management |
Services |
Background logic for monitoring & popups |
BroadcastReceivers |
Detect call events |
Helper Classes |
Contact lookup, spam detection, popups |
Utils |
SharedPreferences, formatting |
- Android SDK (Java/Kotlin)
- CallScreeningService
- Services (Foreground & Background)
- BroadcastReceivers
- SharedPreferences
- Android Permissions
- SYSTEM_ALERT_WINDOW
- Dependency Injection (if used)
- ✅ Spam Call Reporting
- ☁️ Cloud Backup of call logs
- 📊 Analytics Dashboard for user insights
| Incoming Call Screen | Caller Info Popup | Settings Page |
|---|
This app is built to learn and demonstrate how a call identification application like Truecaller functions internally. It focuses on call detection, spam filtering, background processing, permission handling, and displaying user-friendly popups using Android native tools.
- Clone the repo:
git clone https://github.com/yourusername/truecaller-clone-android.git
👉 Download the Latest Version (.APK)
Click the link above to download and install the latest release of the app directly to your Android phone. Make sure you allow installation from unknown sources in your device settings.






