Back to portfolio

Ad-free Android · Utility · com.michael.frozendroid

FrozenDroid ad-free Android app icon

FrozenDroid: No-Root Android App Freezer with Shizuku

Freeze and restore Android apps without root using Shizuku. Review bloatware safety, create freeze profiles, and inspect wake activity offline and ad-free.

Completely ad-free — no ads, no trackers, no sponsored clutter.

Ad-free Android app

What is FrozenDroid?

FrozenDroid is an ad-free, no-root Android utility for reviewing, freezing, and restoring packages that waste battery — using Shizuku-assisted controls with offline safety guidance.

Ad-free advantage: Completely ad-free — no ads, no trackers, no sponsored clutter. MichaelSam94 apps are built without banner ads, interstitial ads, or video ad interruptions.

Key capabilities

  • Freeze/unfreeze via Shizuku-backed package commands
  • Offline bloatware safety catalog
  • Protected-package hard blocks
  • Reusable freeze profiles
  • CPU wake telemetry without ads

Frequently asked questions

Is FrozenDroid ad-free?

Yes. FrozenDroid is completely ad-free so package management is not interrupted by cleaner-style advertising.

Does FrozenDroid require root?

No. It is designed for no-root control through Shizuku-assisted package manager commands, with ADB fallback modes when configured.

Can FrozenDroid freeze dangerous system packages?

A hard-coded safety policy blocks dangerous system packages before freeze commands run, and an offline catalog explains bloatware risk levels.

FrozenDroid is an ad-free, no-root Android utility for reviewing, freezing, and restoring packages that waste battery — using Shizuku-assisted controls with offline safety guidance.

Ad-free: Completely ad-free — no ads, no trackers, no sponsored clutter.

FrozenDroid is a no-root Android utility for reviewing, freezing, and restoring installed packages that waste battery or run unwanted background services. It is built for Android power users who want Shizuku-assisted package control, offline safety guidance, reusable freeze profiles, and CPU wake telemetry without sending app data to a backend.

No hosted demo is configured. The repository includes generated Google Play assets for reviewing the current app experience.

Project Overview

FrozenDroid helps users make safer package-management decisions on Android devices with OEM, carrier, or social-app bloatware. The app combines a local package inventory, an offline safety directory, protected-package rules, profile workflows, and telemetry views so users can disable noise while avoiding core system components.

This folder contains the Android app. In the parent workspace, the Netlify-ready privacy-policy site lives in ../FrozenDroid-pv/.

Key Features

  • 🧊 Freeze and unfreeze packages through Shizuku-backed pm disable-user and pm enable commands.
  • 🛡️ Block dangerous system packages with a hard-coded safety policy before command execution.
  • 📚 Load an offline bloatware catalog from bloatware_db.json with safety levels, reasons, and affected features.
  • 🔎 Refresh installed-package inventory, including disabled packages, into a local Room database.
  • 👤 Save user safety overrides and profile state with Room and DataStore.
  • 📊 Parse CPU wake telemetry to help identify packages that keep waking the device.
  • 🧭 Provide built-in Shizuku privilege-state handling and setup guidance when access is degraded.
  • 🏪 Generate Google Play screenshots, an app icon, and a feature graphic with Roborazzi-backed tests.

Architecture Overview

Components

ComponentLocationResponsibility
Presentationapp/src/main/java/.../presentation/uiCompose screens, navigation, ViewModels, and UI state.
Domainapp/src/main/java/.../domainPackage models, repository contracts, safety rules, and use cases.
Dataapp/src/main/java/.../dataRoom entities/DAOs, local repositories, and DataStore preferences.
Frameworkapp/src/main/java/.../frameworkShizuku service binding, shell command execution, telemetry parsing, and workers.
Assetsapp/src/main/assetsOffline bloatware package catalog used by the Safe Directory.

Request And Data Flow

1. Compose screens call ViewModel actions for package refresh, freeze, unfreeze, profile, or telemetry operations. 2. ViewModels delegate to domain use cases such as FreezeAppUseCase, UnfreezeAppUseCase, and MonitorCpuWakeUseCase. 3. Use cases validate safety through FreezeSafetyPolicy before a package-changing command runs. 4. Repositories combine local Room rows, user overrides, and the static bloatware catalog into app-facing models. 5. CommandExecutorImpl prefers a live Shizuku binder and falls back to the configured ADB mode when selected. 6. WorkManager workers run background freeze, profile-switch, and CPU-monitoring work.

Design Patterns

  • Clean Architecture-style layering separates UI, domain logic, data access, and Android framework integrations.
  • Repository interfaces keep ViewModels and use cases independent from Room, assets, and shell execution details.
  • Hilt provides application, database, executor, and repository dependencies.
  • StateFlow/DataStore streams keep UI state reactive and local-first.

Tech Stack & Libraries

LayerTechnologyVersionPurpose
LanguageKotlin2.1.0Primary Android implementation language.
BuildGradle Wrapper9.5.1Reproducible local builds.
Android pluginAndroid Gradle Plugin9.1.1Android application build and packaging.
SDKAndroid SDKcompile 36.1, min 24, target 36Device compatibility and platform APIs.
UIJetpack Compose BOM2024.09.00Declarative UI toolkit.
UIMaterial 3Compose BOM-managedApp components and design system.
NavigationNavigation Compose2.8.9In-app route management.
DIHilt2.57Dependency injection.
StorageRoom2.7.0Local package, profile, telemetry, and override persistence.
StorageDataStore Preferences1.1.7User settings and privilege mode storage.
Background workWorkManager KTX2.9.0Scheduled freeze, profile, and telemetry workers.
Privileged commandsShizuku13.1.5No-root package-manager command bridge.
Networking utilitiesOkHttp / Retrofit / Moshi4.10.0 / 2.12.0 / 1.15.2Available dependencies for typed HTTP clients and JSON parsing.
TestsJUnit / Robolectric / Roborazzi4.13.2 / 4.16.1 / 1.59.0Unit, Android-resource, and screenshot asset tests.

Configuration

LocationPurposeRestart Required
.envSecrets Gradle Plugin input; currently mirrors .env.example.Re-run Gradle tasks after changes.
local.propertiesLocal Android SDK path created by Android Studio or Gradle tooling.Re-run Gradle tasks after changes.
key.propertiesOptional local release-signing values.Re-run release build after changes.
app/build.gradle.ktsApp ID, SDK levels, version, signing, tests, and build features.Rebuild required.
app/src/main/assets/bloatware_db.jsonOffline package safety catalog.Reinstall or clear app data after asset changes.
app/src/main/res/values/strings.xmlApp name and localized strings.Rebuild required.

Runtime user preferences are stored in DataStore under frozendroid_settings. Package inventory, profiles, telemetry events, and safety overrides are stored in the Room database.

Usage / Quick Start

Build And Install The Android App

./gradlew assembleDebug
./gradlew installDebug

After installing, start Shizuku on the target device and open FrozenDroid. The app listens for Shizuku binder availability and records the privilege mode as SHIZUKU, ADB, or DEGRADED.

Freeze And Restore A Package

val blocked = FreezeSafetyPolicy.blockReason("com.android.systemui")
check(blocked != null)

val result = commandExecutor.freeze("com.samsung.android.bixby.agent")

The app validates package names and protected-package rules before it calls pm disable-user --user 0 <package> through Shizuku or the selected ADB flow.

Generate Play Store Assets

./gradlew generatePlayStoreAssets

API Reference

Not applicable. This repository does not expose an HTTP API, public SDK, or CLI. Package operations are internal Android app flows backed by Shizuku, ADB-mode shell commands, Room, DataStore, and WorkManager.

Internal Command Surface

OperationInternal methodShell command behaviorErrors
Freeze packageCommandExecutor.freeze(packageName)pm disable-user --user 0 <package>Invalid package, protected package, permission denied, binder failure, verification failure.
Unfreeze packageCommandExecutor.unfreeze(packageName)pm enable <package>Invalid package, permission denied, binder failure, verification failure.
Force stop packageCommandExecutor.forceStop(packageName)am force-stop <package>Invalid package, protected package, permission denied, service failure.
Package stateCommandExecutor.getPackageState(packageName)Reads package enabled/disabled state.Defaults to enabled when state cannot be resolved.

Testing

Run commands from this Android app directory:

./gradlew testDebugUnitTest
./gradlew connectedDebugAndroidTest
./gradlew generatePlayStoreAssets
Test typeCommandLocation
Unit and Robolectric tests./gradlew testDebugUnitTestapp/src/test/java
Instrumented tests./gradlew connectedDebugAndroidTestapp/src/androidTest/java
CoverageNot configuredNo JaCoCo/Kover setup is present.
End-to-end testsNot configuredNo dedicated e2e suite is present.

Current naming convention uses descriptive Kotlin test classes such as FreezeSafetyPolicyTest, ShizukuPrivilegeModeTest, and BatterystatsWakeParserTest.

Deployment

Android Debug Builds

./gradlew assembleDebug

Debug APK output is produced under app/build/outputs/apk/debug/.

Android Release Builds

KEYSTORE_PATH="$HOME/keystores/frozendroid-upload.jks" \
STORE_PASSWORD="$FROZENDROID_STORE_PASSWORD" \
KEY_PASSWORD="$FROZENDROID_KEY_PASSWORD" \
./gradlew assembleRelease

Release signing expects an alias named upload unless KEY_ALIAS or key.properties overrides it. Minification is currently disabled for the release build type.

Google Play Assets

./gradlew generatePlayStoreAssets

Docker And Health Checks

Not applicable. The repository does not include Docker or docker-compose files. The Android app has no server health check.

EdgeFlow ad-free Android app iconUtility
EdgeFlow

Ad-free Android edge gesture helper. Turn left/right screen edges into one-handed shortcut zones for Back, Home, notifications, media, and more — no ads in your gesture flow.

com.michael.edgeflow
NotchCommand ad-free Android app iconUtility
NotchCommand

Ad-free Android notch utility. Turn the punch-hole camera cutout into gesture shortcuts, battery sweep, and audio visualizer ring — no ads, privacy-first overlay tools.

com.michael.notchcommand
Smooth-Mo ad-free Android app iconUtility
Smooth-Mo

Ad-free on-device slow-motion video app for Android. Import local clips, target 60/120 FPS, track progress, preview, and export — no ads, no footage uploaded to the cloud.

com.michael.smoothmo
StoreClear ad-free Android app iconUtility
StoreClear

Ad-free Android storage cleaner. Find hidden space, remove duplicates, visualize large folders, clean empty folders/cache, and securely shred files — no ads, no file uploads.

com.michael.storeclear
Wi-Fi Drop ad-free Android app iconUtility
Wi-Fi Drop

Ad-free Android file transfer over local Wi-Fi. Send photos, videos, documents, and folders nearby with live progress or Web Share via QR — no ads, no cloud account.

com.michael.wifidrop
AuraSound ad-free Android app iconAudio
AuraSound

Ad-free offline ambient sound mixer for Android. Layer focus, nature, ambient, and sleep loops with volume controls, presets, and a sleep timer — no ads, no streaming account.

com.michael.aurasound
BLE Finder ad-free Android app iconDeveloper
BLE Finder

Ad-free BLE scanner for Android. Find nearby Bluetooth Low Energy devices with RSSI radar, hot/cold proximity, and optional audio pings — no ads while you track peripherals.

com.michael.blefinder
Bulk QR & Barcode Suite ad-free Android app iconScanner
Bulk QR & Barcode Suite

Ad-free bulk QR and barcode scanner for Android. High-speed batch scanning, CSV/Excel exports, and branded logo QR generation — no ads, offline-first inventory tools.

com.michael.bulkqrscanner

All ad-free Android app names

Complete index of completely ad-free Android apps by Michael Samuel Naeem on Google Play and GitHub — utility, privacy, productivity, developer, media, finance, and device tools with no ads. Completely ad-free — no ads, no trackers, no sponsored clutter. Every listed Android app is published without ads. Search engines can discover each exact product name, package, marketplace listing, and source page from this index.

  • AuraSound ad-free · Audio · com.michael.aurasound · ad-free ambient sound mixer Android
  • BLE Finder ad-free · Developer · com.michael.blefinder · ad-free BLE scanner Android
  • Bulk QR & Barcode Suite ad-free · Scanner · com.michael.bulkqrscanner · ad-free bulk QR barcode scanner
  • ClearVoice AI ad-free · AI · com.michael.clearvoiceai · ad-free noise reduction Android
  • ClipVault ad-free · Productivity · com.michael.clipvault · ad-free clipboard manager Android
  • DevPocket ad-free · Developer · com.michael.devpocket · ad-free developer toolkit Android
  • Doc Scanner Vectorizer ad-free · Document · com.michael.docscannervectorizer · ad-free document scanner Android
  • EdgeFlow ad-free · Utility · com.michael.edgeflow · ad-free edge gestures Android
  • FolderFlow ad-free · Productivity · com.michael.folderflow · ad-free app organizer Android
  • FrozenDroid ad-free · Utility · com.michael.frozendroid · ad-free app freezer Android Shizuku
  • InsightlySpend ad-free · Finance · com.michael.insightlyspend · ad-free personal finance Android
  • Micro Budgeting ad-free · Finance · com.michael.microbudgeting · ad-free offline budget app Android
  • NotchCommand ad-free · Utility · com.michael.notchcommand · ad-free notch shortcuts Android
  • PDF Toolkit ad-free · Document · com.michael.pdftoolkit · ad-free PDF toolkit Android
  • Photo Optimizer ad-free · Media · com.michael.photo.optimizer · ad-free photo compressor Android
  • PrivAI ad-free · AI · com.michael.privai · ad-free on-device AI notes OCR
  • SensorScope ad-free · Developer · com.michael.sensorscope · ad-free Android sensor diagnostics
  • Smooth-Mo ad-free · Utility · com.michael.smoothmo · ad-free slow motion video Android
  • StoreClear ad-free · Utility · com.michael.storeclear · ad-free storage cleaner Android
  • Subtrackr ad-free · Finance · com.aistudio.subtrackr · ad-free subscription tracker Android
  • Tic Tac Toe ad-free · Game · com.michael.tic_tac_toe · ad-free tic tac toe Android
  • Todo App ad-free · Productivity · com.michael.todoapps · ad-free todo list Android
  • WalkPlanner ad-free · Health · com.michael.walkplanner · ad-free walk route planner Android
  • Wi-Fi Drop ad-free · Utility · com.michael.wifidrop · ad-free Wi-Fi file transfer Android