Skip to content

πŸ‘» Ghost Mode

Seamlessly turn your Android device "unavailable" for incoming cellular calls while keeping high-speed LTE / mobile data fully active.

Android Kotlin Compose Shizuku Root License

πŸ‡·πŸ‡Ί Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ Π½Π° русском языкС


🌟 Overview

Ghost Mode is an open-source Android utility that makes your phone appear as "Subscriber unavailable" / "Out of service" to all incoming cellular callers (just as if the phone were switched off), while LTE / 5G mobile data continues to work at full speed.

No more airplane mode, missed internet notifications, or clumsy call reject rules. You remain fully connected to the web, instant messengers, and cloud services without being disturbed by unsolicited calls.

πŸ’‘ How It Works

  1. IMS / VoLTE Deregistration: Disables telephony IMS registration (cmd phone ims disable), preventing VoLTE and VoWiFi calls from reaching the device.
  2. Strict LTE-Only Lock: Locks the modem to LTE packet transmission (cmd phone set-allowed-network-types-for-users -s 0 01000001000000000000), disabling Circuit Switched Fallback (CSFB) to 2G/3G.
  3. Restoration: When toggled off, your exact original network mask and IMS stack are cleanly restored.

All commands run via Shizuku (rootless shell via ADB UID 2000) or direct Root (su via KernelSU / Magisk / APatch).


✨ Features

  • ⚑ No Root Required: Executes privileged telephony commands seamlessly via Shizuku (with built-in 1-click download & setup guidance).
  • πŸ”₯ Root Superuser Support: Direct su backend with automatic privilege detection (KernelSU, Magisk, APatch) β€” works instantly after device reboot without relaunching Shizuku.
  • πŸ“± Multi-Vendor Presets: Pre-configured profiles for Google Pixel (AOSP), Xiaomi (MIUI / HyperOS), Samsung (One UI), OnePlus (OxygenOS), vivo/iQOO (OriginOS / Funtouch), and legacy Android versions.
  • ⊞ Preset Grid Tiles & List View: Interactive 2-column preset grid with instant switching, custom creator, and export/import.
  • πŸŽ›οΈ Quick Settings Tile: Toggle Ghost Mode directly from your Android notification shade with one tap; long-press opens app directly.
  • 🧩 Home Screen Widget: Sleek interactive desktop widget for instant state switching.
  • ⏰ Automated Schedules: Daily quiet hours (e.g. 23:00 β†’ 08:00) with persistent boot-aware exact alarms.
  • πŸ”” Persistent Status Notification: Optional active mode notification featuring an elapsed timer and direct one-click "Turn Off" action.
  • πŸ“Š Usage Statistics: Track total time in Ghost Mode, session history (up to 500 records), and usage trends (today, 7 days, all-time).
  • 🌍 Bilingual Interface: Full English and Russian localization with instant runtime language switching.
  • 🎨 Modern Material 3 UI: Clean adaptive design with 3-dots action menu (Diagnostics, Command Log, Schedule, Language, Stats, About).

πŸ“‹ Compatibility & Requirements

Requirement Minimum Recommended
Android OS Android 8.0 (API 26) Android 12+ (API 31+)
Privilege Provider Shizuku v10+ KernelSU / Magisk / Shizuku
Carrier VoLTE enabled LTE / 5G coverage

🏷️ Vendor Presets Matrix

Preset Target Systems Core Strategy
Universal (Auto-detect) Android 12+ (Default) Automatically discovers device & carrier IMS package names and toggles them
Stock / Pixel Google Pixel, Moto, Clean AOSP cmd phone ims disable + LTE-only network mask lock
Xiaomi MIUI / HyperOS Xiaomi, Redmi, POCO AOSP telephony shell commands bypass hidden MIUI lockouts
Samsung One UI Galaxy S / A / Z series LTE-only lock + disables com.sec.imsservice user package
OnePlus (OxygenOS) OnePlus 8-13 (Snapdragon / MTK) AOSP commands + toggles Qualcomm/MediaTek IMS packages (org.codeaurora.ims)
vivo / iQOO (OriginOS / Funtouch) vivo X/V series, iQOO AOSP commands + handles SoC IMS services (com.mediatek.ims)
Legacy Android (9–11) Android 9.0 – 11.0 Global preferred network mode 11 + fast airplane toggle

πŸš€ Quick Start Guide

1. Choose Your Execution Backend

Option A: Rootless via Shizuku (Recommended for non-rooted phones)

  1. Install Shizuku on your device.
  2. Start the Shizuku service via Wireless Debugging (Android 11+) or via ADB from a PC:
    adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh
  3. Open Ghost Mode, tap Grant Permission on the backend status card, and authorize.

Option B: Direct Root (KernelSU / Magisk / APatch)

  1. Grant root permissions to Ghost Mode in your superuser manager (KernelSU / Magisk).
  2. Open Ghost Mode β€” root will be detected automatically (su -c id).
  3. Root mode is completely persistent across device reboots.

2. Enable Ghost Mode

  1. Select the preset matching your device (or keep Universal).
  2. Toggle the main switch to ON.
  3. Verify:
    • Call your number from another phone: should hear "Subscriber unavailable".
    • Open a browser on LTE (Wi-Fi off): web pages load fast without interruptions.

πŸ”§ Building from Source

Prerequisites

  • JDK 17+
  • Android SDK 35 (Platform tools & build-tools 35.0.0)

Build Debug APK

# Clone the repository
git clone https://github.com/foxlape/GhostMode.git
cd GhostMode

# Build debug APK
./gradlew assembleDebug

# Output APK path: app/build/outputs/apk/debug/app-debug.apk

Build Release APK

./gradlew assembleRelease
# Output APK path: app/build/outputs/apk/release/app-release.apk

πŸ”’ Official Release Signing Certificate

To verify the authenticity of official Ghost Mode releases:

SHA-256: FB:2A:E9:C4:80:BB:0F:04:55:65:F7:B5:CA:BF:01:7D:98:18:21:A9:33:F0:78:53:DD:47:12:28:D5:71:B0:50

πŸ“‚ Project Architecture

GhostMode/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ src/main/
β”‚   β”‚   β”œβ”€β”€ aidl/               # Shizuku UserService AIDL interface (IUserService.aidl)
β”‚   β”‚   β”œβ”€β”€ java/com/ghostmode/app/
β”‚   β”‚   β”‚   β”œβ”€β”€ data/           # Preset models, JSON serializer, State Repository
β”‚   β”‚   β”‚   β”œβ”€β”€ domain/         # GhostModeController state machine & mask parser
β”‚   β”‚   β”‚   β”œβ”€β”€ scheduling/     # ScheduleManager & Boot/Time receiver
β”‚   β”‚   β”‚   β”œβ”€β”€ service/        # Ongoing Status Notification Foreground Service
β”‚   β”‚   β”‚   β”œβ”€β”€ shell/          # AutoShellExecutor, RootShell, ShizukuUserService
β”‚   β”‚   β”‚   β”œβ”€β”€ tile/           # Quick Settings QS Tile Provider
β”‚   β”‚   β”‚   β”œβ”€β”€ widget/         # Home Screen AppWidgetProvider
β”‚   β”‚   β”‚   └── ui/             # Jetpack Compose UI (Cards, Dialogs, Material3 Theme)
β”‚   β”‚   └── res/                # Vector drawables, localization strings (EN, RU)
β”‚   └── build.gradle.kts        # App build config (Kotlin 2.0, Compose BOM, SDK 35)
β”œβ”€β”€ .github/
β”‚   β”œβ”€β”€ workflows/              # CI build & automated GitHub Release workflows
β”‚   └── ISSUE_TEMPLATE/         # Bug report & preset request templates
β”œβ”€β”€ LICENSE                     # Apache-2.0 License
β”œβ”€β”€ README.md                   # English Documentation
└── README.ru.md                # Russian Documentation

⚠️ Limitations & Disclaimers

Warning

Emergency Calls: Never rely on this mode in critical situations where emergency availability is essential. Always turn Ghost Mode off when urgent call reception is needed.

  • SMS Delivery: On some cellular carriers, SMS text messages are routed through IMS. Disabling IMS might delay SMS until Ghost Mode is turned off.
  • Conditional Call Forwarding: If you have active voicemail or carrier call forwarding set up for "When unreachable", callers may be redirected to your voicemail.
  • OnePlus Devices: After disabling Ghost Mode on certain OxygenOS versions, a quick network toggle or restart might be required if VoLTE does not immediately re-register.
  • Responsibility: Use this software strictly on your own hardware in accordance with local telecommunications regulations.

🀝 Contributing

Contributions are welcome!

  • Found a command combination that works for a new phone vendor? Submit a Preset Request.
  • Encountered a bug? File a Bug Report.
  • Want to improve code or translations? Check out CONTRIBUTING.md and open a Pull Request!

πŸ“„ License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

About

Turn your Android device 'unavailable' for incoming calls while keeping LTE/5G mobile data fully working. Supports Shizuku & Root.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

20 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages