Skip to content

viruchith/VoidCall

Repository files navigation

VoidCall

Summary

VoidCall is a privacy-first utility application for Android that allows users to securely hand their phones to strangers for a single phone call. It locks down all other OS functions, ensuring the user's personal data, notifications, and other applications remain completely inaccessible during the call.

Problem Addressed

Have you ever been approached by a stranger who urgently needed to make a phone call, but you felt hesitant to hand over your unlocked phone? Handing your unlocked phone to someone gives them full access to your personal messages, photos, and apps. VoidCall solves this by creating a sandboxed dialer environment.

Features

  • Secure Session: Locks the device into a kiosk-like mode using Android's Device Admin APIs.
  • System Lockdown: Blocks the status bar and suppresses notifications via Do Not Disturb (DND) so no incoming messages can be intercepted.
  • Custom Dialer: Provides a custom, fully functional dialpad to make calls.
  • Call Status Tracking: Displays real-time call status (Dialing, Ringing, Active, On Hold).
  • Session Call Log: Maintains a temporary call log of numbers dialed during the session, which is permanently wiped once the session ends.
  • Biometric Authentication to Exit: The session can only be terminated by the device owner through biometric authentication or device PIN.

Technical Stack

  • Language: Kotlin
  • UI Framework: Jetpack Compose (Material 3)
  • Key Android APIs:
    • DevicePolicyManager (Kiosk Mode / Screen Pinning)
    • TelecomManager & InCallService (Custom Dialer / Call Routing)
    • NotificationManager (DND & Notification Suppression)
    • BiometricPrompt (Secure Exit)
    • RoleManager (Default Dialer Role)

How to Setup

  1. Clone this repository to your local machine.
  2. Open the project in Android Studio.
  3. Sync the project with Gradle files.
  4. Build and run the app on a physical device running Android 8.0 (API level 26) or higher.
  5. On the first launch, the app will request necessary permissions:
    • Default Dialer: To route calls through the custom InCallService.
    • Device Admin: To lock the screen and prevent navigating away.
    • Notification Access & DND: To suppress incoming notifications.
    • Display Over Other Apps: To block the status bar from being pulled down.

Author

Viruchith Ganesan

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

About

VoidCall is a privacy-first utility application for Android that allows users to securely hand their phones to strangers for a single phone call.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages